Tôi muốn có ⌘ + W đóng một cửa sổ/JFrame
trong một chương trình Tôi viết thư này trong Clojure. Làm thế nào điều này có thể được thực hiện? Các giải pháp Java thuần túy cũng được chào đón.Làm thế nào để có Command-W đóng một cửa sổ trên Mac OS bằng Java hoặc Clojure
11
A
Trả lời
13
Dưới đây là một cách:
Action closeWindow = new AbstractAction("Close Window") {
@Override public void actionPerformed(ActionEvent e) {
// window closing code here
}
};
closeWindow.putValue(Action.ACCELERATOR_KEY, KeyStroke.getKeyStroke(
KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
Đặt rằng Action
trong một menu trên thanh menu của bạn. Máy gia tốc sẽ là Ctrl + W trên Windows.
Có lẽ tốt hơn là nên sử dụng Keybinding API có bảng điều khiển chính trong mỗi JFrame
(giả sử có nhiều) ràng buộc cùng KeyStroke
như trên trong (WHEN_FOCUSED
) bản đồ đầu vào của nó đến một hành động trong bản đồ hành động của mình rằng đóng khung .
public class ClosableWindow extends JFrame {
public void setUp() {
JPanel mainPanel = createMainPanel();
int mask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
KeyStroke closeKey = KeyStroke.getKeyStroke(KeyEvent.VK_W, mask);
mainPanel.getInputMap().put(closeKey, "closeWindow");
mainPanel.getActionMap().put("closeWindow",
new AbstractAction("Close Window") {
@Override public void actionPerformed(ActionEvent e) {
setVisible(false);
dispose();
}
});
getContentPane().add(mainPanel);
}
}
Các vấn đề liên quan
- 1. Lấy nét cửa sổ Tkinter trên Mac OS X
- 2. Sửa đổi màu nút cửa sổ trong Mac OS X
- 3. Làm thế nào tôi có thể đóng băng trên một cửa sổ của JTabbedPane?
- 4. Làm thế nào để Đóng một cửa sổ trong WPF trên một lối thoát chính
- 5. Làm thế nào tôi có thể thực hiện một nút highlighten trên cửa sổ bật lên cửa sổ trên Mac bằng cách sử dụng bàn phím
- 6. Làm thế nào để đóng cửa sổ trong awt?
- 7. Làm thế nào để kích hoạt cửa sổ trong Java?
- 8. Làm thế nào để chạy chức năng của cửa sổ cha khi cửa sổ con đóng?
- 9. Làm thế nào để chạy chức năng của cửa sổ cha khi cửa sổ con đóng?
- 10. hủy phiên trên cửa sổ đóng?
- 11. Đóng cửa Clojure
- 12. Đóng cửa sổ kendoui bằng nút Đóng tùy chỉnh trong cửa sổ
- 13. EXTJS đóng một cửa sổ
- 14. Java Swing GUI trên Mac OS X
- 15. Có cách nào để tìm tên os bằng java?
- 16. Tôi làm cách nào để đóng một cửa sổ cụ thể bằng cách sử dụng Selenium WebDriver với Java?
- 17. Làm cách nào để có danh sách tiêu đề cửa sổ trên Mac OSX?
- 18. Cài đặt Java 6 trên Mac OS
- 19. Mac OS X: Có thể một quá trình hiển thị cửa sổ của một quá trình khác không?
- 20. Làm thế nào tôi có thể phát hiện khi nào các cửa sổ mới được mở và/hoặc có danh sách các cửa sổ đang mở?
- 21. Làm thế nào để đóng cửa sổ GLUT mà không chấm dứt ứng dụng?
- 22. Không có nguồn Java trên Mac OS X
- 23. Làm thế nào để hiển thị lại cửa sổ chính sau khi đóng cửa trong Cocoa?
- 24. Extjs. Đóng cửa sổ bật lên bằng cách nhấp không có trong cửa sổ
- 25. làm mới cửa sổ mẹ khi đóng cửa sổ con
- 26. Kéo và thả Java trên Mac OS X
- 27. Java FileChannel.tryLock có hoạt động trên Mac OS X không?
- 28. Làm thế nào để sử dụng đầu dò hotspot trong dtrace trên Mac OS X Leopard?
- 29. Cách đóng cửa sổ Tkinter bằng cách nhấn một nút?
- 30. Làm cách nào để tạo tệp tạm thời có tên trên các cửa sổ bằng Python?