我創建了一個JPopupmenu並添加了一個JTextField。當我使用金屬或靈氣時,一切都可以。問題是當我將LookAndFeel切換到Windows時。我不能按右ALT,因爲如果我按下這個鍵,JPopupmenu會隱藏。LookAndFeel行爲差異
我可以使用正確的ALT在Windows LookAndFeel中編寫國家標誌嗎?
import javax.swing.*;
import java.awt.event.*;
public class Popup extends JFrame {
JPopupMenu popup;
JPanel panel;
JTextField field;
public Popup(){
setSize(500,400);
try {
//UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
} catch (ClassNotFoundException | InstantiationException
| IllegalAccessException | UnsupportedLookAndFeelException e1) {
e1.printStackTrace();
}
SwingUtilities.updateComponentTreeUI(this);
popup = new JPopupMenu();
field = new JTextField(10);
popup.add(field);
JButton button = new JButton("Options");
button.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
popup.show(e.getComponent(), e.getX(), e.getY());
}
});
panel = new JPanel();
panel.add(button);
add(panel);
}
public static void main(String[] args){
Popup pop = new Popup();
pop.setVisible(true);
}
}
是的,這正是我所期望的。你試圖達到什麼目標?你可以考慮使用JWindow或未裝飾的JFrame – MadProgrammer
看起來像這樣。 [鏈接](http://oi58.tinypic.com/b5lceu.jpg) 我想篩選JList中的項目,最後選擇一個 – Zbijlud
我會考慮使用未裝飾的JFrame,但必須使用WindowFocusListener確定自動隱藏窗口。問題是,許多操作系統都希望顯示字段和菜單的快捷鍵 – MadProgrammer