这次博客主要讲一下在实现GUI的过程中遇到的一些问题。
大一夏季学期的时候选了一门C#的课,虽然听的不是很懂,不过大概学了一下VS的用法,其中最主要的一点是感受到了VS在编辑GUI的时候的强大与方便。很可惜,这门课使用的eclipse在gui编辑上并没有默认的工具,正常来讲需要每次写完代码跑一下才行,于是我上网查找了一下,发现可以使用一个插件来实现和VS差不多的功能。
于是我试着用了一下,具体的步骤是先下载这个插件,下载的时候在market中下载就可以了,具体的操作是在eclipse中打开 :
帮助->Eclipse MarketPlace,然后使用搜索功能搜索Windows就可以找到了,如图所示。
下载好WindowsBuilder后重新启动一次,就可以在新建时选择新建一个窗口了:
右键一个包,选择新建->其他,如图所示:
这样,写好的代码可以快速预览,也可以直接在预览页面进行简单的编辑。
以输出“Hello,Window"为例:
首先,新建一个名为HelloWindow的JFrame页面:
可以看到,已经默认生成好了一些代码:
切换到design界面,可以看到当前窗口的预览:
我们直接拖动这个窗口更改大小:
也可以在代码界面进行编辑改变大小:
然后,我们尝试添加一个textbox到这个窗口中,这里我们可以在预览界面直接拖一个进去:
虽然看起来好像没什么变化,但是在结构中已经可以看到这个textbox了,接下来,我们尝试写一些东西进去:
接下来,我们可以尝试更改一下文字的显示,包括显示位置,字体大小,字体颜色,背景等等,可以选择直接写代码,不过这种基础的更改,我们在预览界面可以更快速的进行:
可以看到,我们对这个界面进行了一些简单的改动,实际上文本框中的显示内容以及这个文本框的名字也可以在这里改动,这些部分和VS是很类似的。
接下来,我想添加一个按钮,在这里我尝试了很久,翻阅了java的一本教程,并在多个论坛和博客进行查找,但都没能解决一个问题,最后我通过一点点尝试才解决了这个问题。
这里,我们还是在预览界面添加一个按钮,然后他会提示我们选择一个位置进行放置:
在我们放置之后,我想试着去改变按钮的大小,上网查找教程中提示我使用setBound方法等,都进行了尝试然而并不能解决问题,于是我在这里浪费了很多时间:
在我尝试一点点重复地删减代码,自己重新写一个不基于此插件的代码后,我终于发现了问题的症结所在:
查找后发现,使用此方法会将界面显示变为边框显示,但是不存在这行代码时,就会是默认的显示方式流布局,区别在于,在流布局下,可以依次在默认位置塞进去数个按钮,但是使用了边框布局后,在一个panel中的一个区域(分为东西南北中五个区域)中,只能放置一个按钮。这个问题大概是解决了,这样就可以按照书上的方式放置按钮了:
可以看到,在这种情况下,我们可以在某种程度上改变这些按钮的位置关系了:
遗憾的是,我仍然没有找到方法能够使用网上所说的采用坐标定位的方法,可能在下次的博客中我就能找到好用的方法了吧。