我正在尝试绘制一个外壳(实际上是一个复合标签),看起来像我附加的图像。我几乎尝试了每个小部件的所有功能-GridData、GridLayout,试图更改水平跨越和列的数量,但没有任何东西出现在我需要的地方...:(
我尝试使用此链接http://www.eclipse.org/articles/Article-Understanding-Layouts/Understanding-Layouts.htm但没有成功。
谁能给我指路吗?
非常感谢。
这应该是一个很好的起点:
public static void main(String args[])
{
Display display = new Display();
final Shell shell = new Shell(display);
shell.setText("StackOverflow");
shell.setLayout(new GridLayout(2, false));
Composite radioLeft = new Composite(shell, SWT.BORDER);
radioLeft.setLayout(new GridLayout(6, false));
radioLeft.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
for (int i = 0; i < 12; i++)
{
Button button = new Button(radioLeft, SWT.RADIO);
button.setText("Radio " + i);
button.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
}
Composite radioRight = new Composite(shell, SWT.BORDER);
radioRight.setLayout(new GridLayout(4, false));
radioRight.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
for (int i = 0; i < 8; i++)
{
Button button = new Button(radioRight, SWT.RADIO);
button.setText("Radio " + i);
button.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
}
Group groupLeft = new Group(shell, SWT.NONE);
groupLeft.setLayout(new GridLayout(6, false));
groupLeft.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
for (int i = 0; i < 12; i++)
{
Label label = new Label(groupLeft, SWT.NONE);
label.setText("Something " + i);
label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
}
Group groupRight = new Group(shell, SWT.NONE);
groupRight.setLayout(new GridLayout(1, false));
groupRight.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
for (int i = 0; i < 2; i++)
{
Label label = new Label(groupRight, SWT.NONE);
label.setText("Something " + i);
label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
}
Group bottom = new Group(shell, SWT.NONE);
bottom.setLayout(new GridLayout(6, false));
bottom.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
for (int i = 0; i < 12; i++)
{
Label label = new Label(bottom, SWT.NONE);
label.setText("Something " + i);
label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
}
Composite buttonComp = new Composite(shell, SWT.NONE);
buttonComp.setLayout(new GridLayout(2, true));
buttonComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
Button left = new Button(buttonComp, SWT.PUSH);
left.setText("Left");
left.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
Button right = new Button(buttonComp, SWT.PUSH);
right.setText("Right");
right.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
shell.pack();
shell.open();
while (!shell.isDisposed())
{
if (!shell.getDisplay().readAndDispatch())
shell.getDisplay().sleep();
}
}
看起来像这样:
我理解并能使用FormLayout,FormData,FormAttachment,但我不理解GridLayout,GridData是如何工作的。我想学习使用GridLayout和GridData,因为它更像一个表,它有一个结构,不依赖于其他小部件。 我是一名网络开发人员(前端、后端),我迷失在Java“网格”结构中。我应该如何对齐,在单元格内移动小部件(水平/垂直Aling,hor。/vert。
本文向大家介绍Android使用GridLayout绘制自定义日历控件,包括了Android使用GridLayout绘制自定义日历控件的使用技巧和注意事项,需要的朋友参考一下 效果图 思路:就是先设置Gridlayout的行列数,然后往里面放置一定数目的自定义日历按钮控件,最后实现日历逻辑就可以了。 步骤: 第一步:自定义日历控件(初步) 第二步:实现自定义单个日期按钮控件 第三步:将第二步得到的
介绍 (Introduction) GridLayout类在矩形网格中排列组件。 类声明 以下是java.awt.GridLayout类的声明: public class GridLayout extends Object implements LayoutManager, Serializable 类构造函数 SN 构造函数和描述 1 GridLayout() 在单行中创建一
介绍 (Introduction) GridLayout类将组件排列在矩形网格中。 Class 声明 (Class Declaration) 以下是java.awt.GridLayout类的声明 - public class GridLayout extends Object implements LayoutManager, Serializable 类构造函数 (Class
(初学者) 嗨,很抱歉问这个问题,但是我总是有错误从哪里冒出来,我希望这个程序很简单。 理想情况下,我会在填充颜色时使用2D数组JFrame,但显然它们必须是final或实际上是final。