Java GUI在创建表单后调整其大小

时间:2017-01-26 01:00:32

标签: java swing user-interface

 public static void main(String[] args) {    
    JFrame frame = new JFrame("Fantasy Football Toolkit");
    frame.setContentPane(new GUI().mainPanel);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(350, 475);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
}

以上是我的GUI应用程序的主要方法。我想知道在这个main方法运行后是否可以更改表单的大小。如果我想在单击按钮时更改大小,该怎么办?问题是我无法访问框架。这必须是这样或那样的。我已经全神贯注地寻找解决方案,但找不到一个。感谢。

1 个答案:

答案 0 :(得分:2)

您始终可以通过var Model = backbone.Model.extend({ "initialize": function() {}, "defaults": { "Property": undefined, "Result": [] }, "method": function( Input ) { var xModel = this; return new rsvp.Promise(function( resolve ) { xWait( Input ).then(function() { //This is the line which is changing the behavior in question. xModel.get("Result").push( xModel.get("Property") + 1 ); resolve( xModel ); }); }); } }); var xModel1 = new Model({ "Property": 0 }); var xModel2 = new Model({ "Property": 1 }); xModel1.method( 5 ).then(function( Result ) { log( "Result: " + JSON.stringify( Result )); }); xModel2.method( 2 ).then(function( Result ) { log( "Result: " + JSON.stringify( Result )); }); 从其保留的任何组件访问顶级JFrame。这个方法返回一个SwingUtilities.getWindowAncestor(yourComponent)对象,但如果你100%确定它是一个JFrame,你总是可以强制转换它(或者首先测试它是这样的。)

获得后,您始终可以在其上调用Window以将其调整为其包含的组件的首选大小。一般情况下,您需要避免直接设置大小,因为在您修改程序时可能会导致错误。