如何在全屏 Window 之上制作 JOptionPane?
How to make JOptionPane on top of a Fullscreen Window?
我找不到全屏的任何具体解决方案Window所以我想问一下。如何在全屏 Window 的顶部制作 JOptionPane?
在这里,我将全屏 window 作为构造函数参数。但是当我按下 ESC 时,我的 window 将自己发送到后台,就像我按下 "Alt+Tab" 一样。然后,如果我从开始菜单栏中单击 if,我可以在 window 的顶部看到它。但是我想结束这个发送后台problem.How我可以解决吗?
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.*;
import java.awt.*;
public class KeyListenerTest extends JFrame implements KeyListener {
private Window windo;
private ImageIcon quitImage;
public KeyListenerTest(Window window)
{
quitImage = new ImageIcon("quitask.png");
windo = window;
addKeyListener(this);
}
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
JOptionPane opti = new JOptionPane();
int choice = opti.showConfirmDialog(windo, "Do you really want to quit?", "QUIT", JOptionPane.YES_NO_OPTION ,
JOptionPane.QUESTION_MESSAGE , quitImage);
opti.requestFocusInWindow();
if(choice == JOptionPane.YES_OPTION)
{
System.exit(0);
}
else
{
dispose();
System.out.println("ESC key typed");
}
}
}
public void keyTyped(KeyEvent e) {
}
public void keyReleased(KeyEvent e) {
}
}
这是我的 window 全屏
代码
window=(Window)frame;
window.setFocusable(true);
KeyListenerTest keyo = new KeyListenerTest(window);
frame.addKeyListener(keyo);
g.setFullScreenWindow(window);
使用:
frame.setSize(300, 200); //or any other size you want for JFrame after changeing from maximalized state
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
而不是:
g.setFullScreenWindow(window);
适合我。
我找不到全屏的任何具体解决方案Window所以我想问一下。如何在全屏 Window 的顶部制作 JOptionPane?
在这里,我将全屏 window 作为构造函数参数。但是当我按下 ESC 时,我的 window 将自己发送到后台,就像我按下 "Alt+Tab" 一样。然后,如果我从开始菜单栏中单击 if,我可以在 window 的顶部看到它。但是我想结束这个发送后台problem.How我可以解决吗?
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.*;
import java.awt.*;
public class KeyListenerTest extends JFrame implements KeyListener {
private Window windo;
private ImageIcon quitImage;
public KeyListenerTest(Window window)
{
quitImage = new ImageIcon("quitask.png");
windo = window;
addKeyListener(this);
}
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
JOptionPane opti = new JOptionPane();
int choice = opti.showConfirmDialog(windo, "Do you really want to quit?", "QUIT", JOptionPane.YES_NO_OPTION ,
JOptionPane.QUESTION_MESSAGE , quitImage);
opti.requestFocusInWindow();
if(choice == JOptionPane.YES_OPTION)
{
System.exit(0);
}
else
{
dispose();
System.out.println("ESC key typed");
}
}
}
public void keyTyped(KeyEvent e) {
}
public void keyReleased(KeyEvent e) {
}
}
这是我的 window 全屏
代码 window=(Window)frame;
window.setFocusable(true);
KeyListenerTest keyo = new KeyListenerTest(window);
frame.addKeyListener(keyo);
g.setFullScreenWindow(window);
使用:
frame.setSize(300, 200); //or any other size you want for JFrame after changeing from maximalized state
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
而不是:
g.setFullScreenWindow(window);
适合我。