1。JFrame弹出新的窗口时,如何把主窗口JFrame设置为模态????
2。JFrame最大化时,如何让窗口内的内容也随着最大化变大

解决方案 »

  1.   

    1、新窗口要用JDialog实现模态。
    2、用java布局,如Gridlayout、borderLayout
      

  2.   

    1、所谓让A实现模态,就是只能访问A,你说让主窗口模态的意思我不太了解,你说的意思是不是让弹出的窗口模态呢?据我所知,只有JDialog才能模态,JFrame好像没有这种设置,你可以让弹出的窗口为JDialog。2、使用布局就可以了,基本上布局相互嵌套可以达到任何你想要的效果。另外也可以试试使用NetBeans可视化绘制,也能达到简单的自动布局效果,不过这个我也不太会用。
      

  3.   

    2.使用默认布局+pack()不可以吗?
      

  4.   

    Every JComponent should call pack()
      

  5.   


    这要看你使用的是何种布局,如何添加的组件。比如用BorderLayout就可以在东南西北中各自添加一个按钮,放大的时候北方和南方的按钮会横向拉伸,西方和东方的按钮会纵向拉伸,中间的按钮会四面拉伸。
    另外如果你使用JDialog的话是不能改变大小的,还有复杂的窗口也可以直接把JFrame设置成不可改变大小,一般游戏等都是这样做的,这样就省事多了。
      

  6.   

    在JFrame 中是没有什么模态这一个说法的。。我只知道JDialog 中可实现模态。。所以你只能对新弹出的窗口用JDialog 不能用JFrame  至于窗口最大化之后文字也随着改变。。用默认的布局的话  文字会随着窗口的大小而发生改变的。。因为窗体默认的布局就是BorderLayout 布局。。