在这次做的项目中,因为要做一个开始游戏的游戏开始的界面,所以自学了一部分JavaGUI方面的内容。
期间遇到了一部分的问题。首先,在界面中,将各个组件放在一个框架里面是需要用布局管理器的,但是当我仅仅使用BorderLayout()型时我发现这个布局管理器并不能达到我想要的具体效果,BorderLayout只能将组件放置在北,南,西,东,中5个部分,我想将三个按钮组件放置在右边中部的位置,但是做出来的东西不美观,感觉不协调。于是我又在书上查了一部分的资料,发现布局管理器能够嵌套,于是我尝试着将GridLayout()型嵌套在BorderLayout的东边,并设置GridLayout为(7,1);
但是我发现GridLayout我不会直接将组,件设置在(4,1),(5,1),(6,1)里,每次,都是将按钮放在(1,1),(2,1),(3,1)部分。为了达到预期效果,想到了设置7个按钮,其中1,2,3,7号按钮为setContentAreaFilled(fales)状态,这样按钮就是处于隐藏状态,并且不会显示出来。然而当我多次运行的时候发现了个问题,就是有时候运行程序时出现Bug,1,2,3,7号按钮有时不会处于隐藏状态,而是普通状态。因此我又去网上找了办法,网上说能使用。setBounds(x,y,width,heigth)方法将按钮设置在自己想设置的位置,当我自己尝试设置的时候,发现按钮并没有变化,原来使用此等方法时,必须把Frame的Layout型改为null,不然将默认为BorderLayout型。最后,终于将三个按钮组件放置在自己希望的位置了。
PS:右边图片不规整的地方则是按钮,还需要部分修改。