花哥哥的瞎說:
主要是去理解鼠標鼠標事件,理解java的GUI界面更深入的瞭解。
瞎鬧:
package JDemo;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class MouseApplcation {
public static void main(String[] args) {
new MouseApplcation().new MouseText();//內部類的實例規則
}
class MouseText extends JFrame implements ActionListener{
public JPopupMenu menu;
JMenuItem copyitem,cutitem,pasteitem;
JTextArea text;
MouseText(){
menu=new JPopupMenu();//建立一個彈出式菜單
copyitem=new JMenuItem("複製");//菜單內的子項
cutitem=new JMenuItem("剪輯");
pasteitem=new JMenuItem("粘貼");
menu.add(copyitem);
menu.add(cutitem);
menu.add(pasteitem);
text=new JTextArea(10,30);
text.addMouseListener(new MouseAdapter() {public void mousePressed(MouseEvent e) {//鼠標的的監聽由匿名類完成
if(e.getModifiers()==InputEvent.BUTTON3_MASK) {//InputEvent.button3_mask爲該事件點擊鼠標右鍵
menu.show(text, e.getX(), e.getY());//該菜單的彈出位置
}}});
this.add(new JScrollPane(text),BorderLayout.CENTER);
copyitem.addActionListener(this);//給菜單項添加監聽
cutitem.addActionListener(this);
pasteitem.addActionListener(this);
this.pack();
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {//實例化方法
if(e.getSource()==copyitem) {
text.copy();
}
else if(e.getSource()==cutitem) {
text.cut();
}
else if(e.getSource()==pasteitem) {
text.paste();
}
}
}
}
界面展示:
話癆:
你是人間琳琅,我好想你。
花哥哥嚴肅說:
所學的知識均從課本,課外讀物,網上收集資料,如果哪有侵權惹到您不開心丫,此外還有我也是小白,如果哪有認識不對的地方還請您抽我一耳光說我哪錯了,我一定會感謝,聯繫企鵝號:184820911,有哪不明白或沒事都可以找我,陪聊,陪吃不陪睡。