setDefaultCloseOperation(int operation):设置用户在此窗体上发起 "close" 时默认执行的操作。方法中的参数解释如下:
为“0”或DO_NOTHING_ON_CLOSE:
(在 WindowConstants 中定义):不执行任何操作;要求程序在已注册的WindowListener 对象的 windowClosing 方法中处理该操作。
比如实例程序代码中更改为f.setDefaultCloseOperation(f. DO_NOTHING_ON_CLOSE);或者f.setDefaultCloseOperation(0),然后查看效果,可以发现窗口无法关闭,下面是相同测试方法,不再解释了。
为“1”或HIDE_ON_CLOSE
调用任意已注册的 WindowListener 对象后自动隐藏该窗体。此时没有关闭程序,只是将程序界面隐藏了。可以打开任务管理器,可以看到一个叫“java.exe”的进程(如果调试运行了多个java程序,则会看到多个“java.exe”的进程),如果此时用EditPlus测试程序,会发现当单击窗口的关闭按钮关闭窗口后,却无法再次对程序进行调试,因为程序线程没有关闭,在任务管理器中关闭java.exe(如果有多个“java.exe”的进程,则先都关闭掉,再来测试该问题)基础后,EditPlus才可以重新编译改程序。
为“2”或DISPOSE_ON_CLOSE
调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体。但继续运行应用程序,释放了窗体中占用的资源。
为“3”EXIT_ON_CLOSE(在 JFrame 中定义):使用 System exit 方法退出应用程序。仅在应用程序中使用。结束了应用程序。
分享到:
相关推荐
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new ImagePanel(image)); frame.pack(); frame.setVisible(true); } catch (IOException e) { e.printStackTrace(); } ``` 上述代码首先...
usepanel1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } ``` 主方法创建了一个`twelve1`对象,并设置了窗口的位置为屏幕中央,以及当用户关闭窗口时程序将退出。 #### 总结 本文介绍了一个使用Java Swing库...
`JFrame`提供了`setDefaultCloseOperation(int operation)`方法来设定窗口关闭时的行为。四种常量选项包括`EXIT_ON_CLOSE`, `DO_NOTHING_ON_CLOSE`, `HIDE_ON_CLOSE`和`DISPOSE_ON_CLOSE`,分别对应不同的窗口关闭...
对于简单的应用来说,推荐使用第六种方法——`setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)`,因为它简洁且易于理解。而对于需要更多自定义行为的应用,则可以根据具体需求选择其他方法来实现更复杂的逻辑。
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 添加绘图面板 add(new Rect3DPaintComponent()); setVisible(true); } } class Rect3DPaintComponent extends JPanel { @Override protected void ...
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); button = new JButton("点击我"); button.addActionListener(e -> { // 添加其他组件逻辑 validate(); // 排布紧凑 }); this.add(button); this....
通过以上实验内容的学习与实践,同学们不仅能够掌握Java GUI编程的基础知识,还能深入了解`JFrame`、`JPanel`、`JDialog`以及`JLabel`等常用组件的使用方法。这些实践有助于提高解决实际问题的能力,同时也为后续更...
除了基础的设置,`JFrame`还提供了其他方法来定制窗口,如: 1. **setResizable()**:控制窗口是否可调整大小,默认为`true`。 2. ** setDefaultCloseOperation()**:设置窗口关闭时的处理方式,如默认的HIDE_ON_...
创建`JFrame`时,通常需要设置其标题、大小、默认关闭操作等属性,并调用`setVisible(true)`方法来显示窗体。 `GridBagLayout` 是Swing提供的一个复杂但功能强大的布局管理器,它使用网格系统来安排组件。每个组件...
// 定义一个构造方法,构造一个窗体。 JFrame jf = new JFrame(title); Container container = jf.getContentPane(); JLabel jl = new JLabel("这是一个 JFrame 窗体"); // 实例化一个 JLabel 对象 // 使标签...
- **定义**:允许方法接受可变数量的参数。 - **示例**:`System.out.printf("%s", "Hello");` #### 1.5 货币和百分比的格式 - **定义**:`NumberFormat` 类提供了一种格式化数字的方式。 - **示例**: ```java ...
`drawOval`方法接受四个参数:x坐标、y坐标、宽度和高度,它们定义了一个椭圆的边界框。如果我们想要画一个完美的圆形,那么宽度和高度应该相等。 ```java public void paint(Graphics g) { int x = (getWidth() -...
通过实例化`JFrame`对象并调用其方法来实现窗体的基本功能。此外,还添加了一个居中的标签来展示窗体的功能。 #### 六、总结 通过上述内容的学习,我们可以了解到如何利用Java Swing库中的组件和技术来开发一个简单...
通过设置`setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)`,确保当用户关闭窗口时程序也会退出。然后设置窗口的大小并使其可见,完成了时钟的显示。 每个`clock`实例在初始化时接收一个偏移量参数`z`,这个参数...
创建`JFrame`后,我们通常会重写`paintComponent()`方法来自定义绘图行为。例如: ```java import javax.swing.JFrame; import javax.swing.JPanel; import java.awt.Color; import java.awt.Graphics; public ...
这里`code`属性指定了Applet的类名,`width`和`height`定义了Applet的尺寸,而`param`标签用于传递参数。 ##### 2.2 调用Applet中的方法 假设Java Applet中有一个名为`myMethod`的方法,可以通过以下方式调用: ```...
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // webstart启动时执行的主方法 public static void main(String[] args) { new HelloWorld(); } } ``` 这段代码创建了一个简单的Swing窗口,并...
此外,还可以通过`setDefaultCloseOperation`方法来指定对话框关闭时的行为,以及通过`setResizable`方法来控制对话框是否可调整大小。 在实际应用中,`JDialog`常用于警告消息、确认操作、输入数据等场景。结合`...
我们还使用setTitle方法来设置窗体的标题,并使用setDefaultCloseOperation方法来设置窗体的关闭操作。 Java Swing提供了大量的方法来控制窗体的布局和显示。例如,我们可以使用pack方法来设置窗体的大小,使用set...
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } } ``` - `init`方法设置了窗口的基本属性,并添加了一个`MyPanel`实例作为窗口的内容面板。 #### 2.4 类 MyPanel - **构造方法**:初始化...