簡體   English   中英

JFrame的帶偵聽器的鍵偵聽器

[英]JFrame's keylistener with actionlistener

我試圖將KeyListener添加到我的JFrame中,並且按下的鍵將執行ActionListener類中的所有代碼。

范例:

當我按F1時,它將觸發ActionListener類。 按照所有說明進行操作。

有什么幫助嗎? 先感謝您。

沒有KeyListener可以“調用” ActionListener。 而是使用所有指令創建一個單獨的方法,並讓KeyListener和ActionListener都調用同一方法。

同樣在這種情況下,不要使用KeyListener,當鍵盤焦點可以改變時,它的行為會反復無常,而應該使用Key Bindings

按下該鍵將執行ActionListener類中的所有代碼。

可以使用Action來代替使用ActionListener Action與ActionListner基本相同,但是您可以定義額外的屬性,以使其更易於與鍵盤一起使用。 閱讀Swing教程中有關如何使用動作的部分, 獲取更多信息和工作示例。 附帶說明,Swing組件被設計為使用動作。

創建Action您將有不同的選擇:

  1. 您可以將Action添加到JMenuItem並且如果定義了“加速鍵”,則在按下F1鍵時將自動調用該Action

  2. 如果不使用JMenuItem則需要手動將KeyStroke綁定到Action 有關手動添加綁定的基礎知識,請參見Swing教程的[如何制作和刪除鍵綁定]部分。( http://docs.oracle.com/javase/tutorial/uiswing/misc/keybinding.html#howto )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM