我正在爲我的大學項目編制一個地圖編輯器。我有一個問題,地圖面板不應該監聽關鍵事件。 當我添加一個ToolBarPane(它擴展了JPanel)時,它帶有JComponent,比如JButton,實現了ActionListener的JComboBox和將該地圖面板(它擴展了JPanel)一起添加到Frame(我使用BorderLayout)。我有System.out.println語句來測試是否收到按鍵,而不是打印,如果我刪除了工具欄,鍵監聽器再次工作,mouseListenner也被禁用,就像keyListener一樣,這意味着我可以'處理新聞事件等,但mouseListener工作正常,我仍然可以處理鼠標移動事件。JPanel沒有聽到關鍵事件時有一個JButton的子組件
這裏是一個屏幕截圖它是如何工作沒有ToolBarPane
http://img684.imageshack.us/img684/3232/sampleku.png
請注意,您可以用鼠標把圖像在地圖上,你還可以用鼠標選擇圖像就像一個激光
img291.imageshack.us/img291/8020/failve.png (請添加http前:工具,按你可以在不同的圖像之間進行切換數字鍵,直到我加入這說明這樣的ToolBarPane能正常工作那我只能發佈一個超鏈接)
(因爲我是一個新用戶,我不能在這裏發表圖片)
隨着ToolBarPane上我已不再能夠處理關鍵事件。
我想這可能是由於焦點轉移到該面板莫名其妙,但不知道。
難道身體知道這一點,可以幫助我嗎?
非常感謝