方法一
调用JDialog的public void setLocationRelativeTo(Component c)方法,默认dialog会相对父窗口居中
方法二
自己做计算
--------------------------------------------------------------------------------------------------------------------------
DemoDialog dlg = new DemoDialog(this, "标题", true);
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension screenSize = kit.getScreenSize();
int width = (int) screenSize.getWidth();
int height = (int) screenSize.getHeight();
dlg.setSize(400, 300);
int w = dlg.getWidth();
int h = dlg.getHeight();
dlg.setLocation( (width - w) / 2, (height - h) / 2);
dlg.setVisible(true);
分享到:
相关推荐
在Java Swing库中,`JFrame`和`JDialog`是两种主要的顶级窗口组件,它们用于构建用户界面。`JFrame`通常用作应用程序的主要窗口,而`JDialog`则用于创建弹出式对话框,可以是模态或非模态的。本教程将深入探讨如何...
首先,`JDialog`是`Window`类的一个子类,它可以直接关联到一个特定的`Frame`(通常是`JFrame`),也可以独立存在。模态对话框(Modal Dialog)是一种特殊的对话框,它会阻止用户与对话框背后的父窗口进行交互,直到...
在这个例子中,我们首先创建了一个`JFrame`,然后基于这个`JFrame`创建了一个模态`JDialog`。接着,我们在对话框中添加了一个按钮,并确保对话框在显示时位于其父窗口的中心。 `JDialog`提供了很多自定义选项,比如...
通过以上实验内容的学习与实践,同学们不仅能够掌握Java GUI编程的基础知识,还能深入了解`JFrame`、`JPanel`、`JDialog`以及`JLabel`等常用组件的使用方法。这些实践有助于提高解决实际问题的能力,同时也为后续更...
需要注意的是,`WindowListener`和`WindowFocusListener`都可以监听窗口焦点的变化,但`WindowListener`的`windowActivated`和`windowDeactivated`方法只适用于帧窗口(JFrame),不适用于非帧窗口(如JDialog)和...
这段代码可以使`JFrame`或`JDialog`居中显示在屏幕上。如果是`JDialog`,还可以让它相对于父窗口居中显示,只需要将参数改为父窗口即可。 以上就是本文总结的一些Java小技巧及其应用场景。希望这些技巧能帮助大家更...
为了实现这个功能,我们需要创建一个自定义的窗口类,继承自Java Swing的`JFrame`或`JDialog`。然后,我们需要监听鼠标事件,特别是`MouseMotionListener`接口中的`mouseDragged`事件,这是实现拖动的关键。 下面是...
创建一个JFrame对象,并调用setVisible(true)方法来显示窗口。 ```java import javax.swing.JFrame; public class SwingApp { public static void main(String[] args) { JFrame frame = new JFrame("我的应用")...
例如,我们可能使用`FlowLayout`或者自定义布局,使得弹窗的内容居中显示。 在`InfoUtil.java`文件中,可能包含了如下关键知识点: 1. **工具类(Utility Class)**:InfoUtil可能是一个工具类,封装了一些通用的...
首先,创建一个JDialog对象需要指定一个所有者窗口,通常是JFrame或JDialog实例。例如: ```java JFrame parentFrame = new JFrame("主窗口"); JDialog dialog = new JDialog(parentFrame, "对话框标题", ...
在这里,我们使用`getContentPane()`获取JFrame或JDialog的默认容器,并设置布局管理器,以便添加其他组件。例如,我们将`button`添加到`contentPane`中。 5. **事件处理**: 我们使用`ActionListener`接口来处理...
在Swing中,`JDialog`是用于创建模态或非模态对话框的基础类,它是`JFrame`的一个子类。模态对话框会阻止用户与对话框之外的任何其他窗口进行交互,直到该对话框被关闭;而非模态对话框则允许用户同时与对话框和其他...
JDialog dialog = new JDialog(new JFrame(), "树形对话框", ModalityType.APPLICATION_MODAL); dialog.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // 添加JTree到面板 JPanel panel = new JPanel();...
2. **BorderLayout**:它是Window、JDialog、Dialog、Frame、JFrame等的默认布局,分为五个区域:North、South、East、West和Center。当容器尺寸变化时,中间(Center)区域的组件大小会调整,而边缘(North/South/...
在创建按钮演示窗口时,可以设置按钮文本的位置为居中,并根据窗口内容自动调整大小。 8. 计算器应用: 要创建一个简单的计算器,可以使用Swing的`JButton`组件来创建数字和运算符按钮,然后监听按钮点击事件来...
容器不仅包含组件,还可以嵌套其他容器,比如JFrame、JApplet、JDialog和JWindow是常见的容器类型。容器中,组件的位置和大小通常由布局管理器(LayoutManager)控制,以实现跨平台的兼容性。 布局管理器是Java GUI...
- **JDialog**: 用于创建对话框,通常作为JFrame的子窗口出现。 - **JApplet**: 虽然现在已经不常用,但曾经被广泛用于开发可以在Web浏览器中运行的小程序。 一个简单的使用JFrame的例子如下: ```java import ...
Java中的顶级容器包括JFrame、JApplet、JWindow和JDialog,而中间层容器如JPanel、JScrollPane和JTabbedPane用于组织和展示组件。 布局管理器(LayoutManager)是GUI设计的关键,它负责自动安排容器中的组件布局。...
- `Help` 类实现了 `TreeSelectionListener` 接口,这意味着它需要实现 `valueChanged` 方法来响应树节点选择的变化。 ### 总结 通过以上分析可以看出,`About` 类和 `Help` 类都是使用 Java Swing 框架创建的简单...
1. 使用Java Swing库构建图形用户界面(GUI),包括JFrame、JButton、JMenu、JMenuItem等组件。 2. 文件操作通过java.io.File、java.io.FileInputStream、java.io.FileOutputStream等类实现。 3. 文本编辑功能利用...