(1) 讓類實(shí)現(xiàn)窗體監(jiān)聽器接口,這將使得該類變成窗體事件監(jiān)聽器;(2) 向類注冊(cè)窗體事件監(jiān)聽器;(3) 實(shí)現(xiàn)窗體事件監(jiān)聽器的所有方法。
創(chuàng)新互聯(lián)建站憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專業(yè)的網(wǎng)站策劃、成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站優(yōu)化、軟件開發(fā)、網(wǎng)站改版等服務(wù),在成都十載的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都上千多家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
其實(shí)JFrame可以用這個(gè)方法實(shí)現(xiàn)關(guān)閉窗口的:this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);這樣就不用加監(jiān)聽器了。
WindowStateListener, EventListener。WindowListener并不會(huì)監(jiān)聽windowLostFocus事件。//第二個(gè)問題:frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);這句話等于說一點(diǎn)X,就關(guān)閉程序,所以才顯示不出確認(rèn)對(duì)話框。
你在創(chuàng)建一個(gè)按鈕,在把按鈕添加到面板或者Frame上,在按鈕上添加監(jiān)聽,之后就是調(diào)用一個(gè)方法,在方法中添加。
打開eclipse,并且建立java一個(gè)工程,具體如下代碼:addActionListene(newActionListene(){pulicvoidactionPefomed(ActionEvente){dispose();}});執(zhí)行該程序查看結(jié)果,如圖所示。
用JFrame寫的java小應(yīng)用是直接帶有窗口的,在main()中加上setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)。
esc鍵通常不是說退出,是加上ctrl鍵可以 實(shí)現(xiàn)倒回桌面的操作,你要關(guān)閉一個(gè)程序就要 看這程序有沒有支持快捷鍵的功能,如果沒有 通常是不支持的, 當(dāng)然比如網(wǎng)頁上面用ctrl加 f4可以實(shí)現(xiàn)快速關(guān)閉當(dāng)前操作界面。
方法很多:1System.exit(0)2Swing的關(guān)閉窗口方法 3隱藏窗口。
這個(gè)是我以前寫的類似的按鈕??梢詤⒖家幌?。
首先分析需要的GUI技術(shù) java中一般使用swing 和awt技術(shù)來實(shí)現(xiàn)圖形界面,Swing組件較多,功能比較強(qiáng)大,所以這里使用Swing組件來實(shí)現(xiàn)。窗口使用(JFrame),按鈕使用(JButton)。
1、因?yàn)槟氵@個(gè)類實(shí)現(xiàn)了ActionListener接口,所以這個(gè)類本身就是一個(gè)監(jiān)聽器,this指的就是這個(gè)監(jiān)聽器類的對(duì)象,就是說用這個(gè)類的對(duì)象做為監(jiān)聽器監(jiān)聽著sub這個(gè)按鈕發(fā)出的行為事件。
2、jb.addActionListener(this);這里給jb那個(gè)按鈕設(shè)置了監(jiān)聽,默認(rèn)為點(diǎn)擊觸發(fā),當(dāng)然你寫的這個(gè)監(jiān)聽有點(diǎn)怪異~點(diǎn)擊按鈕jb觸發(fā)監(jiān)聽處理方法actionPerformed,在這里可以做你想要的操作,你代碼實(shí)現(xiàn)的是改變lab這個(gè)label標(biāo)簽的內(nèi)容。
3、你a[i][j].addActionListener(this); 這句就是給按鈕加監(jiān)聽啊,你想給哪些按鈕加就在哪些按鈕上調(diào)用addActionListener(this);方法。你的類還實(shí)現(xiàn)ActionListener接口,并補(bǔ)全actionPerformed方法,添加監(jiān)聽的方法才不會(huì)報(bào)錯(cuò)。
4、程序改好了你在OpenJFrame這個(gè)類中畫界面就行了, ML 這個(gè)類是一個(gè)監(jiān)聽功能,給你的按鈕加上了監(jiān)聽,另外建議不要再main函數(shù)中寫界面的代碼 。