关于eclipse中windowbuilder控件的使用

时间:2024-05-22 21:16:45

  在写软件构造Lab3的过程中,因为需要实现机场航班表、高铁车次表、教师占用表的可视化操作,因此需要学习相关可视化插件的操作,本人选择了使用eclipse中能够下载的windowsbuilder插件作为可视化的工具。使用windowsbuilder的好处在于可以通过直接的框架布局完成窗口的设计,从而自动生成绘制窗口所需要的JFrame代码,简化了可视化的步骤。在查询学习了相关资料后,我将我所了解到的windowsbuilder的相关概念和操作整理如下。
  一些关于windowbuilder必须了解到的知识:
  在窗口设计界面可以看到这些:
  关于eclipse中windowbuilder控件的使用
  其中:
  1.contanters【容器】
  容器是一切的基础,就比如一台主机的主板,没有主板,显卡和CPU之类的东西就无法组合起来.目前只使用【panel】
  2.layout【布局】
  所谓布局,就是指控件在窗口摆放的格式,没有布局控件就无法摆放,因而窗口无法设置

  (1)流式布局【FowLayout】(限制很大的布局,适合用于有条理布置控件的情况)
控件就像队列一样向某个排列,当遇到边界的时候,就折回从下一行继续排队。就像军训的时候人员一排一排的站好,当一排人数满的时候,就另起一行继续排队。
  常用的构造函数有三种
  FowLayout()
  FowLayout(int align)
  FowLayout(int align, int hgap, int vgap)
  其中align 代表的是对齐方式,包括三种,值作为静态常量保存在 FlowLayout中了
  FlowLayout.LEFT 从左向右对齐
  FlowLayout.RIGHT从右向左对齐
  FlowLayout.CENTER从中间向两边对齐
  (2)BorderLayout 边框布局(同样是限制很大的布局)
  控件的摆放位置分为东、南、西、北、中五个部位
  (3)CardLayout 卡片式布局(可以切换页面的布局,用于需要切换页面的情况)
  (4)AbsoluteLayout 绝对式布局(最*的布局,可以随意摆放控件的位置,但并不具备卡片式布局的特殊效果),这种布局最为*,推荐使用
  诸如此类界面都要建立在绝对布局之上。
  3.Componets【控件】(用于实现功能的物件,就是类似于主机里的cpu和显卡)
  (1).Jlabel,标签
  (2).JTextFiled,文本框(例如输入QQ账号的那种框)
  (3).JCombobox ,下拉控件(例如你要登录QQ时选择你的qq账号列表)
  (4).Jbutton,按钮(最常见的,如QQ登录按钮)
  (5).JRadioButton
  (6).JPasswordFiled,密码框
  4.menu【菜单】
  诸如浏览器上面的窗口都是菜单控件组成的
  
  下面来介绍一个完整的可视化窗口的绘制过程:
  1.打开eclipse,在任意项目下单击鼠标右键,new一个other类的java源文件,找到windowBuilder组件下的Swing Designer,选择需要创建的窗口布局类型,命名后完成创建。(这里以登陆窗口为例,继承JFrame)
关于eclipse中windowbuilder控件的使用
关于eclipse中windowbuilder控件的使用
关于eclipse中windowbuilder控件的使用
  2.进入Design界面,选中内部窗体,进行布局方式设置,然后在Containers面板中找到ScorllPane容器,拖拽到设计界面任意位置,拉动鼠标,控制容器大小。
关于eclipse中windowbuilder控件的使用
关于eclipse中windowbuilder控件的使用
  设置layout为GroupLayout布局,能够任意拖动组件到想要的位置。
  3.label文本,button按钮,textfield文本框等组件可直接拖动布置到图形化界面上,然后设计各个组件的参数,字体大小,背景颜色等,注意JComboBox组件在设置时需要在model选项中设置其中产生的条目项。根据需求设计即可。

  本次实验中,最后设计出的界面效果如下:
关于eclipse中windowbuilder控件的使用
  自动生成的代码示例:

关于eclipse中windowbuilder控件的使用
  这样就可以完成可视化的操作了。

参考文章