① java中按鈕監聽處理問題
//定義的按鈕,要全局的變數
private JButton submit= new JButton("確定");
private JButton cancle = new JButton("取消");
...
監聽的方法
public void actionPerformed(ActionEvent e) {
//獲取事件源
JButton button ==(JButton)e.getSource());
if(button == submit){
//點擊的是確定按鈕
}
if(button == cancle ){
//點擊的是取消按鈕
}
}
e.getSource()是獲取事件的源,就是從哪裡發生的點擊事件。
這樣應該可以處理你的問題吧
② java中怎樣為多個按鈕設置監聽
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.MouseAdapter;
importjava.awt.event.MouseEvent;
publicclassOne
{
publicstaticvoidmain(String[]args)
{
JFramef=newJFrame("JAVA小游戲");
//設置f布局管理器為3行3列,組件間水平和垂直間距都為2
f.setLayout(newGridLayout(3,3,2,2));
for(inti=0;i<9;i++)
{
if(i%2==0)
{
JButtonbtn=newJButton("+");
btn.addMouseListener(newMouseMonitor(btn));
f.add(btn);
}
else
{
JButtonbtn=newJButton("-");
btn.addMouseListener(newMouseMonitor2(btn));
f.add(btn);
}
}
f.setSize(300,200);
f.setVisible(true);
f.setResizable(false);
}
}
{
JButtonjbt;
publicMouseMonitor(JButtonx)
{
this.jbt=x;
}
publicvoidmouseClicked(MouseEvente)
{
jbt.setText("-");
}
}
{
JButtonjbt;
publicMouseMonitor2(JButtonx)
{
this.jbt=x;
}
publicvoidmouseClicked(MouseEvente)
{
jbt.setText("+");
}
}
剛學的AWT,Swing沒學,試了下,能達到效果。
③ JAVA中如何給按鈕做監聽
你a[i][j].addActionListener(this); 這句就是給按鈕加監聽啊,你想給哪些按鈕加就在哪些按鈕上調用addActionListener(this);方法。
你的類還實現ActionListener介面,並補全actionPerformed方法,添加監聽的方法才不會報錯。
有問題的話再問,把問題描述的具體些。
④ java中回車鍵監聽按鈕事件
document.onkeydown=function(){
if (event.keyCode == 13){ //回車
}
if (event.keyCode == 32){ //空格
}
}
⑤ Java按鈕監聽
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.math.BigDecimal;
importjava.util.Scanner;
importjavax.swing.JFrame;
importjava.awt.Button;
importjava.awt.Label;
importjava.awt.TextField;
importjava.awt.Frame;
importjava.awt.Panel;
importjava.awt.Color;
importjava.awt.*;
publicclassPanelTest{
publicstaticvoidmain(Stringargs[]){
/*Scannersc=newScanner(System.in);doublepi=3.14,s;doubler;r=sc.nextDouble();s=pi*r*r;System.out.println("s等於"+s);*/
EventQueue.invokeLater(newRunnable(){
publicvoidrun(){
CricleFrameframe=newCricleFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
classCricleFrameextendsJFrame{
Panelp=newPanel();
TextFieldt=newTextField();
Buttonb=newButton("確定");
Labela=newLabel("請在此輸入半徑");
TextFieldresult=newTextField();
publicCricleFrame(){
add(a);
add(t);
add(b);
add(result);
add(p);
setVisible(true);
p.setBackground(Color.black);
a.setBackground(Color.yellow);
t.setBackground(Color.white);
result.setBackground(Color.white);
b.setBackground(Color.cyan);
setSize(300,300);
setTitle("圓的面積");
a.setBounds(105,45,90,25);
t.setBounds(100,80,100,25);
result.setBounds(100,180,100,25);
b.setBounds(111,120,80,40);
b.addActionListener(newActionListener(){//按鈕點擊事件監聽
publicvoidactionPerformed(ActionEventevent){
Doubler=0.0;
try{
r=Double.parseDouble(t.getText());
}catch(Exceptione){
System.out.println(e.getMessage());
}
BigDecimaltmp=newBigDecimal(r*r*Math.PI);
Doublearea=tmp.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();//保留2位小數
result.setText(""+area);
}
});
}
}
在你的基礎上改了一下,界面什麼的沒有改
⑥ java如何監聽所有按鈕
先定義一個監聽器al:
ActionListener al = new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
String str = btn1.getText();
field.setText(str);
}
};
然後所有button都調用addActionListener(al);這樣al就可以監聽所有button的點擊事件了.通過e.getSource()獲取哪個按鈕,然後獲取按鈕上的數字即可.
⑦ java中如何實現多按鍵同時按下的鍵盤監聽事件
1,為相應的控制項設置KeyListener()的監聽
2,實現介面中的方法
3,主要重寫keyPressed()這個方法
4,書寫邏輯
5,見代碼
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_1&&e.getKeyCode()==KeyEvent.VK_2){
System.out.println("1,2鍵被點擊了。。。");
}
}ps,還可以自己寫一個數組記錄每個按鍵的狀態,根據狀態值進行邏輯處理。
⑧ javaswing 按鈕監聽問題
因為你這個類實現了ActionListener介面,所以這個類本身就是一個監聽器,this指的就是這個監聽器類的對象,就是說用這個類的對象做為監聽器監聽著sub這個按鈕發出的行為事件。
⑨ 如何實現java在後台監聽鍵盤
操作系統,有兩個層次,第一個層次是對組裝起電腦的各個硬體的驅動程序;第二個是建立在驅動程序上的各項應用程序,比如桌面顯示、鍵盤監聽後的處理程序等等。如果想要進行監聽鍵盤,那麼就需要獲取到所使用操作系統給出的api介面,以windows系統為例,是用c和c++進行編寫的,所以他們提供的api都是c和c++的api介面。於是用java的話就需要用到java的native方法,一個Native Method就是一個java調用非java代碼的介面。所以3個步驟:
1、引用java native方法。
2、研究windows api。
3、調用windows api中的鍵盤監聽介面,完成程序。
⑩ 用java監聽鍵盤輸入,該如何解決
用java監聽鍵盤輸入
我現在做一個程序需要實時得跟蹤鍵盤的輸入,當客戶輸入回車鍵後,需要將客戶在輸回車前面所輸的內容到資料庫里去匹配,然後進行相應的操作。我是用KeyAdapter類的監聽功能,但我這個程序是希望運行在後台,也就是說當這個程序啟動的時候,無論客戶在那裡輸入內容(在ie,word等其他應用程序),都將被記錄下來,但目前好像只能在程序里起一個JPanal,並且把這個Panel設成focus後才會記錄.這樣,我在切換到其他應用程序時就不會監聽成功了.
------解決方案--------------------------------------------------------
貌似你這個非法
------解決方案--------------------------------------------------------
我好像是沒想到
------解決方案--------------------------------------------------------
只用java是做不了的,要用Windows的系統鉤子進行。因為你的程序是運行在java平台上的,不可能超出java虛擬機的范圍,java虛擬機是一個進程,ie,word是其他的進程,要想捕獲其他發給其他進程的消息,必須站在系統的角度才能做到,在自己的進程裡面再折騰也不能得到別的進程的任何信息。
------解決方案--------------------------------------------------------