Ⅰ java中如何獲得一個對話框中的按鈕的點擊事件
現在假設你這個對話框對象名字叫chooser,
你可以寫int returnVal = chooser.showOpenDialog(null),
然後判斷returnVal的值,點打開就是JFileChooser.APPROVE_OPTION,
點取消就是JFileChooser.CANCEL_OPTION。
Ⅱ java按鈕被點擊事件
添加按鈕監聽。回見內容寫成方法,然後調用即可。大概像下面這樣
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
publicclassTest{
publicstaticvoidmain(String[]args){
JButtonA=newJButton("A");
JButtonB=newJButton("B");
JButtonC=newJButton("C");
A.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
methodA();
}
});
B.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
methodB();
}
});
C.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
methodA();
methodB();
}
});
}
publicstaticvoidmethodA(){
//執行A方法
}
publicstaticvoidmethodB(){
//執行B方法
}
}
Ⅲ Java 程序實現滑鼠點擊 鍵盤等事件
Java提供了兩個事件偵聽介面用來管理滑鼠移動和鍵盤動作,分別是MouseMotionListener和KeyListener,可以用它們來捕捉滑鼠和鍵盤。
1)類KeyMonitor,是一個JPanel的擴展類,用來顯示捕捉到的按鍵信息;
2)類MouseMonitor,也是一個JPanel的擴展類,用來顯示到的滑鼠移動信息;
3)入口類Main,用匿名類的方式實現了真正的監聽介面;
PS:Java提供的這兩個偵聽器都有很大的限制,滑鼠監聽只有在滑鼠位於Java程序所在的窗口范圍之內才能有效,而鍵盤監聽限制更嚴格,僅當Java程序成為當前的活動窗口時才有效。單純用Java來實現全屏幕、所有程序的滑鼠和鍵盤活動是不可行的。
Ⅳ java滑鼠點擊事件怎麼做
java滑鼠點擊事件的方法如下:
<spanstyle="font-family:Verdana;">事件源</span>.addMouseListener(newMouseAdapter(){//建立事件處理機制
@Override
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==e.BUTTON1){//點擊滑鼠左鍵
intx=e.getX();
inty=e.getY();
Stringstr="您點擊的是左鍵,滑鼠當前點擊位置的坐標是("+x+","+y+")";
label.setText(str);
}elseif(e.getButton()==e.BUTTON2){//點擊滑鼠滑輪
intx=e.getX();
inty=e.getY();
Stringstr="您點擊的是滑輪,滑鼠當前點擊位置的坐標是("+x+","+y+")";
label.setText(str);
}
elseif(e.getButton()==e.BUTTON3){//點擊滑鼠右鍵
intx=e.getX();
inty=e.getY();
Stringstr="您點擊的是右鍵,滑鼠當前點擊位置的坐標是("+x+","+y+")";
label.setText(str);
}
}
});
e.getButton()返回值分別為NOBUTTON、BUTTON1、BUTTON2、BUTTON3,分別代表著無點擊、左擊、中間鍵、右擊三種情況。
Ⅳ java按鈕的點擊事件是什麼意思
java中,按鈕點擊時會觸發你的點擊函數onclick,你在點擊的函數中寫你的代碼就可以了,比如你說的跳轉另一個面板。
Ⅵ java 模擬用戶點擊事件
調用按鈕的 doClick() 方法,下例演示了 button2 模擬點擊 button1 按鈕:
importjava.awt.FlowLayout;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JOptionPane;
publicclassAppextendsJFrame{
publicApp(){
this.setSize(300,200);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(newFlowLayout());
JButtonbutton1=newJButton("Button1");
button1.addActionListener(e->JOptionPane.showMessageDialog(App.this,"我是Button1"));
this.add(button1);
JButtonbutton2=newJButton("Button2");
button2.addActionListener(e->button1.doClick());
this.add(button2);
}
publicstaticvoidmain(String[]args){
newApp().setVisible(true);
}
}
Ⅶ JAVA編程中如何自動調用按鈕的點擊事件
直接創建一個SelectionEvent類型的對象,然後直接調用監聽器裡面的方法,比如
SelectionEvent se=new SelectionEvent(...); //...為構造函數的參數,具體內容就得參考API文檔了。
SelectionListener sl=new SelectionListener();
sl.widgetSelected(se);
就這樣。
Ⅷ java按鈕觸發事件問題
可以使用按鈕單擊事件,改變其它組件的狀態,例如下面是一個計數器的例子:
importjava.awt.FlowLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
publicclassDemo7extendsJFrame{
privateintcount=1;
publicDemo7(){
this.setSize(600,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setLayout(newFlowLayout());
JLabellabel=newJLabel(String.valueOf(count));
this.add(label);
JButtonbutton=newJButton("ClickMe!");
//按鈕單擊事件,改變Label顯示文本
button.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEventarg0){
count++;
label.setText(String.valueOf(count));
}}
);
this.add(button);
}
publicstaticvoidmain(String[]args){
newDemo7().setVisible(true);
}
}
Ⅸ java點擊事件
package jframe.thread;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class MyJFrame extends JFrame
{
/**
*
*/
private JMenuItem jma;
private JMenuItem jmc;
private JMenuItem jmd;
private JMenuItem jme;
private JMenuItem jmf;
private JMenuItem jmg;
private JMenuItem jmh;
private JMenuBar jmb;
private JMenu jm1;
private JMenuItem jmi;
public MyJFrame()
{
jmb = new JMenuBar();
JMenu jm1 = new JMenu("個人信息查詢");
jmi = new JMenuItem("按學號查詢");
jma = new JMenuItem("按姓名查詢");
JMenu jm2 = new JMenu("");
JMenu jm3 = new JMenu("成績查詢");
jmc = new JMenuItem("按姓名查詢");
jmd = new JMenuItem("按學號查詢");
jme = new JMenuItem("按學年查詢");
JMenu jm4 = new JMenu("");
JMenu jm5 = new JMenu("學生寢室管理");
JMenu jm6 = new JMenu("");
JMenu jm7 = new JMenu("信息修改");
JMenuItem jml = new JMenuItem("添加信息");
JMenuItem jmj = new JMenuItem("刪除信息");
JMenuItem jmk = new JMenuItem("修改信息");
JMenu jm8 = new JMenu("");
JMenu jm9 = new JMenu("修改密碼");
jmf = new JMenuItem("按寢室查詢");
jmg = new JMenuItem("按學號查詢");
jmh = new JMenuItem("按班級查詢");
jm1.add(jmi);
jm1.add(jma);
jm3.add(jmc);
jm3.add(jmd);
jm3.add(jme);
jm5.add(jmf);
jm5.add(jmg);
jm5.add(jmh);
jm7.add(jml);
jm7.add(jmj);
jm7.add(jmk);
jmb.add(jm1);
jmb.add(jm2);
jmb.add(jm3);
jmb.add(jm4);
jmb.add(jm5);
jmb.add(jm6);
jmb.add(jm7);
jmb.add(jm8);
jmb.add(jm9);
setJMenuBar(jmb);
setBounds(20,20,1050,700);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false); //窗口大小鎖定,設置後,無法通過滑鼠拖動,調整大小。
//如果鎖定了窗口,那麼最大化窗口的按鈕將被自動禁用
validate(); //刷新窗口的作用(有時候會碰到窗口添加組件後,無法
//正常顯示,調整窗口大小後,才能看到。這個方法避免該情況發生)
jmd.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){
MyThread thread1=new MyThread();
thread1.start();//調用start()後,自動執行run()
}
});
}
class MyThread extends Thread{ //加一個線程
public void run(){
JFrame frame1 = new JFrame();
frame1.setVisible(true);
frame1.setTitle("按學號查詢");
frame1.setSize(300,300);
}
}
public static void main(String args[]){
MyJFrame myframe = new MyJFrame();
myframe.setVisible(true);
myframe.setTitle("學生信息管理系統");
}
}
Ⅹ Java給按鈕添加事件
贊一個, 提前學習, 做好預先 , 是個好習慣.
java圖形界面主要有AWT, SWING, SWT, JavaFx等技術
JButton (按鈕)是SWING裡面很常用的組件. 直接添加按鈕到窗口,並不會產生任何交互效果.
要想產生交互效果,就需要了解awt,swing的事件處理機制:
事件:用戶對組件的一個操作,稱之為一個事件;
事件源:發生事件的組件就是事件源;
事件處理器:負責處理事件的方法;
比如 點擊按鈕,彈出HelloWord,
那麼 事件是 點擊按鈕 ,事件源就是按鈕,事件處理器就會彈出對話框,顯示HelloWord.
常用的事件(Event) 有:
滑鼠事件(MouseEvent:滑鼠按下,移入,移除,滾輪..)
鍵盤事件(KeyEvent:鍵盤按下,釋放..)
動作事件(ActionEvent:當按鈕、菜單項被點擊,在JTextField中按Enter鍵時...觸發該事件。)
按鈕添加接收器, 不同的事件,接收器不同.
比如ActionEvent 那麼他的接收器是ActionListener
KeyEvent 那麼他的接收器就是KeyListener
基礎知識,大概就是這些.
所以想要JButton產生交互,你就需要給他添加事件處理器,當發生這些事件時,出發該處理器,進行處理.
寫2個例子,第一個簡單的:點擊按鈕,彈出Hello World
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
//AddFrame繼承自JFrame類,並且實現了ActionListener介面
{
//組件
JTextFieldjtf1,jtf2,jtf3;//文本框,用於:顯示數字
JButtonjbAdd;//按鈕,用於:當點擊按鈕時,計算出加法的結果
JButtonjbClear;//按鈕,用於,清空數字
publicAddFrame(){//構造方法
//初始化組件
jtf1=newJTextField(5);//長度為5的文本框
JLabeljl=newJLabel("+");//文字標簽
jtf2=newJTextField(5);
jtf3=newJTextField(6);
jtf3.setEditable(false);
jbAdd=newJButton("=");
jbAdd.addActionListener(this);//因為本類已經實現了ActionListener介面,所以添加事件的接收器就是自己(this)
jbClear=newJButton("清除");
jbClear.addActionListener(this);
//把組件,添加到窗體
add(jtf1);
add(jl);
add(jtf2);
add(jbAdd);
add(jtf3);
add(jbClear);
//窗體屬性的設置
setLayout(newFlowLayout());//窗體流式布局,按添加順序從左到右排列組件
setSize(380,100);//寬380像素,高100
setLocationRelativeTo(null);//窗體放在顯示器中間
setTitle("加法計算器");//窗體的標題
setDefaultCloseOperation(EXIT_ON_CLOSE);//點擊窗體右上角的關閉按鈕時,結束程序
setVisible(true);//窗體可見
}
/*
*實現ActionListener介面就必須重寫actionPerformed方法
*/
@Override
publicvoidactionPerformed(ActionEvente){//當事件產生後,就會執行actionPerformed里的方法
JButtonjbTemp=(JButton)e.getSource();//得到事件源
if(jbTemp==jbAdd){//如果是從jbAdd產生的事件.那麼執行加法操作
//因為是簡單案例,就不判斷和處理,用戶亂輸入字母漢字等情況,導致的異常了
intx=Integer.parseInt(jtf1.getText());//從文本框1得到字元串,並轉化成數字
inty=Integer.parseInt(jtf2.getText());
jtf3.setText(x+y+"");//計算2個數的和,並顯示在文本框3上
}elseif(jbTemp==jbClear){//如果事件源是jbClear,那麼清除文本框的文字
jtf1.setText("");
jtf2.setText("");
jtf3.setText("");
}
}
//main方法
publicstaticvoidmain(String[]args){
newAddFrame();//創建一個AddFrame的實例
}
}