我正在创建一个 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();
您可以为此覆盖 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).....
你不能。您的第一次调用 frame.add() 不返回任何内容(void)。因此链式方法调用不可能。可能是创建一个带有方法的工厂类,如createAndShowFrame(JComponent component)
.