我有一个处于全屏模式的swing应用程序。我添加了一个按钮来退出我的应用程序。现在我需要禁用WINDOW+D
选项
我曾尝试使用KeyEventListener
来禁用D,但我没有得到预期的结果。
if (e.getKeyCode()==KeyEvent.VK_D){
}
对于禁用ALT+TAB
,我使用了以下代码,该代码正常运行。
frame.setAlwaysOnTop(true);
任何建议?
答案 0 :(得分:2)
为此,您可以尝试使用WindowAdapter
方法windowIconified()
:
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingUtilities;
public class TestFrame extends JFrame {
public TestFrame() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
init();
pack();
setVisible(true);
}
private void init() {
TestFrame.this.setExtendedState(JFrame.MAXIMIZED_BOTH);
add(new JLabel("test"));
addWindowListener(new WindowAdapter() {
@Override
public void windowIconified(WindowEvent e) {
System.out.println("cant minimize");
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
TestFrame.this.setExtendedState(JFrame.MAXIMIZED_BOTH);
}
});
}
});
}
public static void main(String... strings) {
new TestFrame();
}
}