我试图将对话框放在中心(我正在使用java 1.3),但它似乎不起作用。 我尝试了所有以下方式..
dialog.setSize(100, 100);
dialog.setResizable(true);
dialog.setLocation(150, 250);
dialog.setLocationRelativeTo(dialog.getParent());
当我在setSize方法中更改值时,对话框的大小不会改变。 当我在setLocation方法中更改值时,位置不会更改。 这是非常古老的代码,所以我不太清楚该做什么或如何让它工作..
答案 0 :(得分:1)
首先,您应该构建对话框的内容,并且只打算调整大小并在此之后设置其位置。
最好使用正确的布局管理器,并且一旦将所有组件(内容)添加到其中,只需调用其pack()
方法让布局管理器计算大小。
之后你可以通过调用:
来简单地居中dialog.setLocationRelativeTo(null);
传递null
表示将其置于屏幕中心。引自javadoc:
如果组件为
null
,或与此组件关联的GraphicsConfiguration
为null
,则窗口将位于屏幕中央。可以使用GraphicsEnvironment.getCenterPoint
方法获得中心点。
虽然如果它有一个父项,{I}应该像你一样传递,如果它没有父项(dialog.getParent()
)也可以。