java Applet缩放:当对网页进行拖拉缩放时,如果保证和GUI组件位置不变?

时间:2021-09-16 20:05:31
用java开发的applet,上面由多个面板多个组件构成GUI视图.现在遇到的问题是,当用鼠标进行拖动缩小网页时,各组件的位置也会跟着动,当网页恢复成原来的大小时,有些组件的大小已经改变.
    特别是有个Split组件,分隔成上下两部分,原来的样子是上大下小,当用鼠标进行拖动缩小网页,中间的分隔线会往上移动,再点网页右上角的放大钮时,下面的部分会显得比原来的大.
    MFC里面的就不会有这样的情况,当窗口进行缩放时,控件的位置并不发生变化.
请问这是什么原因呢?该怎么解决?

8 个解决方案

#1


选择的Layout不同。。。

#2


null布局即可

#3


布局选择得不正确,你要保证组件一点一不动是不可能的
使用GRIDBAGLAYOUT,好象是这个布局可以满足你要求,他是记录组件与组件之间的距离.

#4


TO shengli_liao(我是谁?) ( ) 信誉:100 
这种布局是定死的,窗体变化时,组件不跟着改变的

#5


谢谢各位的热心解答,前两天是周末,故没有上CSDN.
根据各位的建议,我就先调查一下布局,因为这是接手别人的代码.


另外: TO shengli_liao

请问NULL布局的意思是?从没听过有NULL布局这一说法,挺有意思的.

#6


原来NULL布局就是指没有布局,一旦指定了组件后,它们的大小就不会随着窗口的大小而改变.谢谢shengli_liao.我再试试用NULL布局到原先的GUI界面上看看.有问题还想请教大家的.

#7


如果用空布局,要考虑的东西是什么?如果改变了当前屏幕的分辨率,控件大小会不会跟着变?

#8


用XYLayout,直接用坐标象素锁定组件的大小和位置。

#1


选择的Layout不同。。。

#2


null布局即可

#3


布局选择得不正确,你要保证组件一点一不动是不可能的
使用GRIDBAGLAYOUT,好象是这个布局可以满足你要求,他是记录组件与组件之间的距离.

#4


TO shengli_liao(我是谁?) ( ) 信誉:100 
这种布局是定死的,窗体变化时,组件不跟着改变的

#5


谢谢各位的热心解答,前两天是周末,故没有上CSDN.
根据各位的建议,我就先调查一下布局,因为这是接手别人的代码.


另外: TO shengli_liao

请问NULL布局的意思是?从没听过有NULL布局这一说法,挺有意思的.

#6


原来NULL布局就是指没有布局,一旦指定了组件后,它们的大小就不会随着窗口的大小而改变.谢谢shengli_liao.我再试试用NULL布局到原先的GUI界面上看看.有问题还想请教大家的.

#7


如果用空布局,要考虑的东西是什么?如果改变了当前屏幕的分辨率,控件大小会不会跟着变?

#8


用XYLayout,直接用坐标象素锁定组件的大小和位置。