您好,登錄后才能下訂單哦!
這篇文章主要講解了“java中addMouseListener()方法如何使用”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“java中addMouseListener()方法如何使用”吧!
用于接收組件上“感興趣”的鼠標(biāo)事件(按下、釋放、單擊、進(jìn)入或離開)的偵聽器接口。(要跟蹤鼠標(biāo)移動和鼠標(biāo)拖動,請使用 MouseMotionListener。)
使用組件的 addMouseListener 方法將從該類所創(chuàng)建的偵聽器對象向該組件注冊。當(dāng)按下、釋放或單擊(按下并釋放)鼠標(biāo)時會生成鼠標(biāo)事件。鼠標(biāo)光標(biāo)進(jìn)入或離開組件時也會生成鼠標(biāo)事件。發(fā)生鼠標(biāo)事件時,將調(diào)用該偵聽器對象中的相應(yīng)方法,并將MouseEvent 傳遞給該方法。
public void mouseClicked(MouseEvent e)//鼠標(biāo)按鍵在組件上單擊(按下并釋放)時調(diào)用。 public void mouseEntered(MouseEvent e)/鼠標(biāo)進(jìn)入到組件上時調(diào)用。 public void mouseExited(MouseEvent e)//鼠標(biāo)離開組件時調(diào)用。 public void mousePressed(MouseEvent e)//鼠標(biāo)按鍵在組件上按下時調(diào)用。 public void mouseReleased(MouseEvent e)//鼠標(biāo)按鈕在組件上釋放時調(diào)用。
package mi; import java.awt.*; import javax.swing.*; public class mouseListener extends JFrame implements MouseListener { private JLabel j = new JLabel("測試文本");// 用來測試的組件 private JTextArea jt = new JTextArea(); private JButton exit = new JButton("退出"); public mouseListener() { j.addMouseListener(this); this.add(j, BorderLayout.NORTH); this.add(jt, BorderLayout.CENTER); this.add(exit, BorderLayout.SOUTH); this.setSize(500, 400); this.setVisible(true); this.setLocationRelativeTo(null); exit.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.exit(0); } }); } public static void main(String[] args) { new mouseListener(); } @Override public void mouseClicked(MouseEvent e) {// 單擊鼠標(biāo)時執(zhí)行的操作 jt.append("鼠標(biāo)單擊了此文本區(qū)域\n"); } @Override public void mouseEntered(MouseEvent e) {// 鼠標(biāo)進(jìn)入組件時執(zhí)行的操作 jt.append("鼠標(biāo)進(jìn)入了此文本區(qū)域\n"); } @Override public void mouseExited(MouseEvent e) {// 鼠標(biāo)離開組件時執(zhí)行的操作 jt.append("鼠標(biāo)離開了此文本區(qū)域\n"); } @Override public void mousePressed(MouseEvent e) {// 鼠標(biāo)在組件上按下時執(zhí)行的操作 jt.append("在此文本區(qū)域你按下了鼠標(biāo)\n"); } @Override public void mouseReleased(MouseEvent e) {// 鼠標(biāo)釋放時執(zhí)行的操作 jt.append("鼠標(biāo)按鍵釋放了\n"); } }
另外也可以擴(kuò)展抽象類 MouseAdapter,此時只需重寫有用的方法。
getX()
,getY()
:獲取鼠標(biāo)的坐標(biāo)位置
getModifiers()
:獲取鼠標(biāo)的左或右鍵
getClickCount()
:獲取鼠標(biāo)被點(diǎn)擊的次數(shù)
setCursor()
:控制鼠標(biāo)指針的形狀
當(dāng)鼠標(biāo)鍵被按下、釋放或單擊(按下并釋放)時發(fā)生動作事件
mouseClicked(MouseEvent e)
鼠標(biāo)按鍵在組件上單擊(按下并釋放)時調(diào)用。
public class MouseAdapterTest extends Frame { public static void main(String[] args) { Frame f = new Frame(); f.setBounds(500, 500, 200, 200); f.addMouseListener(new asd()); f.setVisible(true); } } class asd extends MouseAdapter { @Override public void mouseClicked(MouseEvent e) { System.out.println("鼠標(biāo)點(diǎn)擊了"); } }
感謝各位的閱讀,以上就是“java中addMouseListener()方法如何使用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對java中addMouseListener()方法如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。