![](https://csdnimg.cn/release/download_crawler_static/1514475/bg7.jpg)
7
表达式中 y 是纵坐标,从上往下是正方向;x 是横坐标,从左至右是正方向;a 是斜率
(a=m/n,n≠0),b 是偏移量,沿 x、y轴正方向的偏移量为正,反之为负。
具体实例:
FormAttachment formAttachment=new FormAttachment(b1); //指定 B1为参照物
FormData formData2=new FormData(50,30); //创建 FormData对象,宽度 50,高度 30
formData2.left=formAttachment; //b2的左边紧贴与 b1的右边
b2.setLayoutData(formData2); //设置 b2的布局数据为 formData2
Button b3=new Button(shell,SWT.PUSH);
b3.setText("B3");
FormData formData3=new FormData();//创建布局数据对象 formData3
formData3.top=new FormAttachment(b2,10,SWT.BOTTOM);
//b2的底边与 b3的顶部距离为 10
formData3.left=new FormAttachment(b2,0,SWT.LEFT);
//b2的左边与 b3左边位移为 0, 即左边对齐
formData3.right=new FormAttachment(b2,0,SWT.RIGHT);
//b2的右边与 b3右边对齐
b3.setLayoutData(formData3); //设置 b3的布局数据为 formData3
更详细的例子可以参照《Java程序设计之 swt教程》
swing 里到底哪个是控制窗体大小的
在 MainApp里
PassRatioFrame frame = new PassRatioFrame();
frame.setSize(200, 200);
frame.setBounds(new Rectangle(400, 400, 400, 300));
在 PassRatioFrame里
setSize(new Dimension(400, 300));
我试了一下只有 frame.setBounds(new Rectangle(400, 400, 400, 300));