java swing 中,设置弹出的窗口显示在屏幕中间


Java开发桌面程序用AWT或SWING,可以用设置主窗口位置,使主窗口居中一般使用下面的方法:
 (前两种方法都是加在JFrame的构造函数中)           
 01、第一种方法  
int windowWidth = frame.getWidth(); //获得窗口宽
int windowHeight = frame.getHeight(); //获得窗口高
Toolkit kit = Toolkit.getDefaultToolkit(); //定义工具包
Dimension screenSize = kit.getScreenSize(); //获取屏幕的尺寸
int screenWidth = screenSize.width; //获取屏幕的宽
int screenHeight = screenSize.height; //获取屏幕的高
frame.setLocation(screenWidth/2-windowWidth/2, screenHeight/2-windowHeight/2);//设置窗口居中显示 
 
 
 
02、第二种方法
Toolkit kit = Toolkit.getDefaultToolkit(); // 定义工具包
Dimension screenSize = kit.getScreenSize(); // 获取屏幕的尺寸
int screenWidth = screenSize.width/2; // 获取屏幕的宽
int screenHeight = screenSize.height/2; // 获取屏幕的高
int height = this.getHeight();
int width = this.getWidth();
setLocation(screenWidth-width/2, screenHeight-height/2);
 
 
 
03、第三种方法,是jdk1.4之后提供的方法
setLocationRelativeTo(owner);
这种方法是设定一个窗口的相对于另外一个窗口的位置(一般是居中于父窗口的中间),如果owner==null则窗口就居于屏幕的中央一般用在声明对象之后,显示窗口之前 或者 在主界面的初始化代码 
  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Java Swing弹出一个子窗口,你可以使用JFrame类来创建一个新的窗口。 下面是一个简单的示例代码,展示了如何创建一个主窗口和一个弹出的子窗口: ```java import javax.swing.*; public class PopupExample { public static void main(String[] args) { // 创建主窗口 JFrame mainFrame = new JFrame("主窗口"); // 设置窗口的大小和布局 mainFrame.setSize(400, 300); mainFrame.setLayout(null); // 创建按钮,并添加到主窗口 JButton btnPopup = new JButton("弹出窗口"); btnPopup.setBounds(150, 100, 120, 30); mainFrame.add(btnPopup); // 添加按钮的点击事件监听器 btnPopup.addActionListener(e -> { // 创建子窗口 JFrame popupFrame = new JFrame("子窗口"); // 设置窗口的大小和布局 popupFrame.setSize(300, 200); popupFrame.setLayout(null); // 创建标签,并添加到子窗口 JLabel label = new JLabel("这是一个子窗口"); label.setBounds(100, 50, 120, 30); popupFrame.add(label); // 设置窗口可见 popupFrame.setVisible(true); }); // 设置窗口可见 mainFrame.setVisible(true); } } ``` 在这个示例,我们创建了一个主窗口,并在主窗口上添加了一个按钮。当点击按钮时,会创建一个新的子窗口显示出来。 注意,子窗口是通过创建一个新的JFrame对象来实现的。你可以在子窗口添加其他的Swing组件,如标签、文本框等。最后,通过设置窗口的setVisible(true)方法,使其可见。 希望这个示例能够帮助你实现在Java Swing弹出窗口的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值