java中jframe窗体如何在另一个窗体中调用窗体
时间: 2023-08-08 19:10:14 浏览: 198
Java JFrame窗体弹窗_java_jframe
在Java中,可以通过在一个窗体类中创建另一个窗体对象并将其设置为可见来在另一个窗体中调用窗体。你可以在当前窗体中的某个事件处理器中实现这个功能,比如在一个按钮的单击事件处理器中。
下面是一个简单的示例代码,演示如何在一个窗体中调用另一个窗体:
```java
import javax.swing.*;
public class MainFrame extends JFrame {
public MainFrame() {
// 设置窗体大小和标题
setSize(400, 300);
setTitle("主窗体");
// 创建一个按钮
JButton btnOpen = new JButton("打开子窗体");
// 添加按钮的单击事件处理器
btnOpen.addActionListener(e -> {
// 创建一个新的子窗体
ChildFrame childFrame = new ChildFrame(this);
// 将子窗体设置为可见
childFrame.setVisible(true);
});
// 将按钮添加到窗体中
add(btnOpen);
// 设置窗体布局为流式布局
setLayout(new FlowLayout());
// 设置窗体关闭时的默认操作
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// 创建主窗体对象
MainFrame mainFrame = new MainFrame();
// 将主窗体设置为可见
mainFrame.setVisible(true);
}
}
class ChildFrame extends JFrame {
public ChildFrame(JFrame parent) {
// 设置窗体大小和标题
setSize(200, 150);
setTitle("子窗体");
// 设置窗体关闭时的默认操作
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// 设置子窗体相对于父窗体的位置
setLocationRelativeTo(parent);
}
}
```
在这个示例中,我们创建了一个名为MainFrame的JFrame对象,并添加了一个名为“打开子窗体”的JButton。当用户单击这个按钮时,我们创建了一个名为ChildFrame的新JFrame对象,并将其设置为可见。
注意,我们在ChildFrame的构造函数中增加了一个JFrame类型的参数parent,用于传递父窗体对象。我们在子窗体中调用了JFrame的setLocationRelativeTo()方法,将子窗体相对于父窗体居中显示。
当然,这只是示例代码,实际中还需要根据具体需求进行修改和完善。
阅读全文