我有两种方法:createGui
和createButton
。
我在createGui
方法中调用了main
方法。
已创建GUI。
现在我想通过在JButton
方法中使用JFrame
方法在createButton
中添加其他组件,例如createGui
如何通过调用createButton
方法在框架中添加按钮?
public class JavaGui {
public static void main(String[] args){
CreateGui.createGui();
}
}
class CreateGui{
static GraphicsConfiguration gc;
public static void createGui(){
JFrame frame= new JFrame(gc);
frame.setTitle("gui");
frame.setSize(600, 400);
frame.setLocation(200, 200);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
}
public static void createButton(){
JButton button=new JButton();
}
}
答案 0 :(得分:0)
您应该拥有一个扩展JFrame Java类的类,然后可以轻松地向其添加其他组件(即CreateGui扩展了JFrame,然后向其添加JPanel,然后添加组件)。您的操作方式使它看起来比应有的复杂。
答案 1 :(得分:0)
简而言之:
frame.getContentPane().add(myBytton);
之后,您需要阅读有关布局管理器的信息。
答案 2 :(得分:0)
我认为您可以在代码中进行一些改进。
CreateGui
不是一个很好的类名。static
的使用。createGui()
和createButton()
吗?我认为您可以使用单一方法createGui()
来做到这一点。考虑到以上几点,下面的示例代码演示了如何构建这样的简单UI。
import javax.swing.*;
import java.awt.BorderLayout;
public class JavaGui {
public static void main(String[] args) {
JFrame gui = createGui();
gui.setVisible(true);
}
private static JFrame createGui() {
JFrame frame= new JFrame();
frame.setTitle("gui");
frame.setSize(600, 400);
frame.setLocation(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.getContentPane().add(new JScrollPane(new JTextArea()), BorderLayout.CENTER);
frame.getContentPane().add(new JButton("Button"), BorderLayout.SOUTH);
return frame;
}
}