JAVA 获得窗口大小问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 14:14:45
怎样动态获得窗口的大小,也就是运行了程序弹出一个窗口,窗口本来大小是(400,300),如果用户点右上角的那个正方形打窗口全屏化,窗口的默认面板大小也变大了,但那里的组件就没变,还是原来的大小.
请问有没有,监视窗口变化的事件,从而得到新的大小,再改变各组件的大小!或者方法?

不知道你的意思是不是说当窗口变大时窗口里面的控也跟着变大。比如一窗体中只有一个表格,当窗体全屏化的时候表格也跟着变大。如果是这样的话可以用“布局管理器”啊。呵呵,不是很懂你的意思

楼上方法太麻烦了,还是使用一楼所说的布局管理器,建议看看java核心技术卷一中关于布局管理器那一章的论述,讲的很详细,可以解决楼主的问题。不仅能使组件随窗口大小变化,还能规定哪些组件随着变,哪些不随着变,变化还能规定最大变化到多少,都是布局管理器自动完成的,只需要语句设置就可以。

楼主是想让控件随frame大小变化

首先,建一个frame文件(Application应用程序),在Design中将this中的layout设置为null(不要布局器);
第二,在组件盘内点选Swing Container页签,选取Jpanel图标,在this上方拖拽一块区域,同样的方法在下方也拖拽一块区域,为了方便区分,将上方的Jpanel1区域设置为红色,下方的Jpanel2区域设置为橙色。将Jpanel1和Jpanel2的layout设置为null(不要布局器)。
第三,在Jpanel中放入一个Jlable标题栏,JTextField1文本框和Jbutton按钮,在组件盘内点选Swing 页签,选取JLable图标在Jpanel1的左边画一个标题栏,将text改为“请输入查询条件”,再选取JtextField在Jpanel1的中间画一个文本框,将text改为空,最后选取Jbutton在Jpanel1又边画一个按钮将text改为“查询”。在Jpanel2中画三个Jbutton按钮,将text分别设为“增加”、“删除”、“修改”。
第四,在this的中间建一个表格用来显示数据库数据的内容,在Swing Container页签,选取jScrollPane图标,在this的中间拖拽一个大的区域,接着在组件盘内点选Swing 页签,选取JTable图标,将Jtable加入到jScrollPane中。
这样我的界面就做好了,但这个界面不能随窗口自动调整大小。下面编程实现手动布局,使各区域能随窗口自动调整大小。
先用鼠标选中this窗体,再选择右边的事件Events中的componentResized,双击鼠标就进到vo