Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编写JFrame设置的简短方法_Java_Swing_Optimization_Syntax - Fatal编程技术网

Java 编写JFrame设置的简短方法

Java 编写JFrame设置的简短方法,java,swing,optimization,syntax,Java,Swing,Optimization,Syntax,我正在创建一个GUI,并具有以下代码: frame.add(container); frame.pack(); frame.setLocation(200, 200); frame.setVisible(true); 有没有更简短的方法来写这个?我问这个问题主要是出于好奇,因为我总是试图学习新东西 我想我遇到过类似的情况,但我无法在我的应用程序中使用它 frame.add(container).setLocation(200,200).pack().setVisible(); 你不能。您的第

我正在创建一个GUI,并具有以下代码:

frame.add(container);
frame.pack();
frame.setLocation(200, 200);
frame.setVisible(true);
有没有更简短的方法来写这个?我问这个问题主要是出于好奇,因为我总是试图学习新东西

我想我遇到过类似的情况,但我无法在我的应用程序中使用它

frame.add(container).setLocation(200,200).pack().setVisible();

你不能。您的第一个调用frame.add()不返回任何内容(void),因此不可能用于链式方法调用。可以使用
createAndShowFrame(JComponent组件)
等方法创建工厂类

您可以为此重写JFrame。但是我不认为你想做的有什么好处

public MyFrame extends JFrame{


  public JFrame add(Container container){
    super.add(container);
    return this;
  }

  public JFrame setLocation(int x, int y){
    super.setLocation(x,y);
    return this;
  }
  //and so on
}
然后像这样使用它

MyFrame frame = new MyFrame();
frame.add(somecontainer).setLocation(200,200).....

非常感谢。我知道这基本上是不实际的,但很高兴知道有一种方法:)'