gpt4 book ai didi

java - 如何设置此 JFrame 位于屏幕顶部?

转载 作者:行者123 更新时间:2023-12-02 06:31:35 25 4
gpt4 key购买 nike

我长期以来一直尝试将 JFrame 设置到屏幕顶部。我使用了 setLocation()、setBounds() 和其他一些方法但无济于事。我想要的只是一个遮挡屏幕顶部栏(最小化和退出按钮所在的位置)的矩形。这是我的代码,非常感谢您的帮助!

import java.awt.GridBagLayout;
import javax.swing.JOptionPane;
import javax.swing.WindowConstants;
import javax.swing.SwingUtilities;

public class Annoy2 extends javax.swing.JFrame {
private int width;
private int height;
private boolean t = true;

public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Annoy2 inst = new Annoy2();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
});
}

public Annoy2() {
super();
getDimensions();
initGUI();
}

private void initGUI() {
try {
GridBagLayout thisLayout = new GridBagLayout();
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
{
}
setUndecorated(t);
setAlwaysOnTop(true);
this.setResizable(false);
pack();
setSize(width, height);

} catch (Exception e) {
e.printStackTrace();
}
}

private void getDimensions() {
width = Integer.parseInt(JOptionPane.showInputDialog(null, "Width: ", Math.round(java.awt.Toolkit.getDefaultToolkit().getScreenSize().getWidth())));
height = Integer.parseInt(JOptionPane.showInputDialog(null, "Height: ", 30));
}

}

最佳答案

删除 inst.setLocationRelativeTo(null);,这会使您的窗口在屏幕上居中。

要将窗口放置在屏幕顶部,请使用 setBounds() (在 initGUI() 中:

setBounds(0, 0, width, height);

并且您不必子类化 JFrame 来实现此目的。

JFrame block = new JFrame();
block.setUndecorated(true);
block.setBounds(0, 0, width, height);
block.setVisible(true);

关于java - 如何设置此 JFrame 位于屏幕顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20018907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com