JFrame中的控件的大小本来是随着JFrame大小的改变而改变的(是指比例)
而控件的大小是你在写代码的时候就已经定义好了大小的
而jlist你可在其上加滚动条

解决方案 »

  1. JFrame采用的是BorderLayout布局管理器,当你把组件加入到BorderLayout.CENTE中时,组件会自动充满整个BorderLayout.CENTER区域,并随着BorderLayout.CENTER区域的增大而增大。用鼠标拖拉改变组件的大小需要对组件添加MouseListener和MouseMotionListener监听,前者主要判断鼠标点击的状态,后者是对鼠标拖拉事件进行的监听,MouseMotionListener根据鼠标的拖拉位置判断出组件应该的大小,然后设置组件size,最后要使新的大小生效,还必须对组件的父容器重新布局,用invalidate()和validate()方法,这样就可以看到不同大小的组件。还必须提醒的是组件的父容器所采用的布局管理器必须支持设置组件的大小,BorderLayout显然就不能胜任这个工作,推荐使用BoxLayout。<------ 树欲静而风不止 ------>
      

类似问题 »