Java使JFrame "stay put"

标签 java jframe

有没有办法让 Java 应用程序的框架停留在我用 .setLocation 让它出现的位置?我想禁用它被用户在屏幕上移动的能力。

最佳答案

以下是防止移动 JFrame 的方法。在生产应用程序中使用它不是一个好主意,因为它会激怒用户并在用户尝试最小/最大帧时导致其他错误。

public static void main(String args[]) throws Exception {
class JFrameTypeLocking extends JFrame {
    Point locked=null;
    public JFrameTypeLocking(String string) {
        super(string);
        super.addComponentListener(new ComponentAdapter(){
            public void componentMoved(ComponentEvent e) {
                if (locked!=null) JFrameTypeLocking.this.setLocation(locked);
            }});
    }
    public void lockLocation() {
        locked=super.getLocation();
    }
}
JFrameTypeLocking f = new JFrameTypeLocking("");
f.setSize(300,300);
f.setLocation(300,300);
f.setVisible(true);
f.lockLocation();
}

关于Java使JFrame "stay put",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9708751/

相关文章:

java - 为什么 AES/CTR/NoPadding 坏了?

java - 如何在Android中应用buttonStyle?

java - 比较 Java HashMap 中的 2 个键

Java - Jbuttons 没有出现在 JFrame 中

java - Maven 未安装依赖项

java - 打开新的 JFrame 时禁用 JFrame

java - JFrame/面板未显示

java - 有没有一种方法可以将对象设置为重叠并符合网格系统?

Java - 带有 ImageIcon 的 JLabel 上的 setLocation/Bounds 不适用于另一个类

java - 如何在运行时更改 Firefox Web 驱动程序代理设置?