「java按钮点击事件监听」监听按钮点击事件的实现方法

博主:adminadmin 2022-12-18 20:27:09 55

本篇文章给大家谈谈java按钮点击事件监听,以及监听按钮点击事件的实现方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

请教java中的按钮监听事件代码?

把下面两个类去了,直接用匿名内部类来实现...

b1.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

System.out.print(jt.getText());

}

});

b.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

jt.setText("");

DoubleColorBall dbcb = new DoubleColorBall();

try {

// 根据文本框里输入的数字,调用DoubleColorBall中的方法生成彩票

String[] num = dbcb.getNumber(Integer

.parseInt(jf.getText()));

for (int i = 0; i num.length; i++) {

jt.append(num[i] + "\n");

}

} catch (Exception e) {

e.printStackTrace();

jt.setText("请输入正整数数字");

}

}

});

Java按钮监听

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.math.BigDecimal;

import java.util.Scanner;

import javax.swing.JFrame;

import java.awt.Button;

import java.awt.Label;

import java.awt.TextField;

import java.awt.Frame;

import java.awt.Panel;

import java.awt.Color;

import java.awt.*;

public class PanelTest{

    public static void main(String args[]) {

    /*Scanner sc = new Scanner(System.in); double pi=3.14,s;  double r;  r=sc.nextDouble();    s=pi*r*r; System.out.println("s等于"+s);*/

        EventQueue.invokeLater(new Runnable() {

            public void run() {

                CricleFrame frame = new CricleFrame();

                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

                frame.setVisible(true);

            }

        });

    }

}

class CricleFrame extends JFrame{

    Panel p = new Panel();

    TextField t = new TextField();

    Button b = new Button("确定");

    Label a = new Label("请在此输入半径");

    TextField result = new TextField();

    public CricleFrame(){

        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(new ActionListener() {  //按钮点击事件监听

            public void actionPerformed(ActionEvent event) {

                Double r=0.0;

                try{

                    r = Double.parseDouble(t.getText());

                }catch (Exception e){

                    System.out.println(e.getMessage());

                }

                BigDecimal tmp = new BigDecimal(r * r * Math.PI);

                Double area = tmp.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue(); //保留2位小数

                result.setText(""+area);

            }

        });

    }

}

在你的基础上改了一下,界面什么的没有改

java事件监听

你只要改下下面的就可以了:

JButton b,v;//在方法外面声明JButton 对象(加上这一行)

public Test2() {

super("java实例");

b = new JButton("点击");//把着两行的JButton去掉就可以了,你之前是把它声明在方法体内部的,在添加监听器匹配对象是那个b拿不到,其他的都没有什么问题的

v = new JButton("确定");

getContentPane().add(b);

getContentPane().add(v);

setLayout(new FlowLayout());

b.addActionListener(this);

v.addActionListener(this);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(200, 200, 300, 300);

b.setBounds(0, 0, 30, 40);

v.setBounds(50, 50, 30, 40);

setVisible(true);

}

java用监听事件监听两个按钮

你问的是JAVASE么?

使用Button的addActionListener就好了

JFrame frame = new JFrame();

        frame.setTitle("my frame");

        frame.setBounds(0, 0, 200, 100);

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        

        JButton btn1 = new JButton("OpenBrowser");

        JButton btn2 = new JButton("OpenNotepad");

        JPanel panel = new JPanel(new FlowLayout(4));

        

        btn1.addActionListener(new ActionListener() {

            @Override

            public void actionPerformed(ActionEvent e) {

                if(e.getActionCommand().equals("OpenBrowser")) {

                    try {

                        Process p = Runtime.getRuntime().exec("explorer ");

                        p.destroy();

                    } catch (IOException e1) {

                        e1.printStackTrace();

                    }

                }

            }

        }) ;

        

        btn2.addActionListener(new ActionListener() {

            

            @Override

            public void actionPerformed(ActionEvent e) {

                try {

                    Process p = Runtime.getRuntime().exec("notepad");

                    p.destroy();

                } catch (IOException e1) {

                    e1.printStackTrace();

                }

            }

        });

        

        panel.add(btn1);

        panel.add(btn2);

        

        frame.add(panel);

        frame.setVisible(true);

JAVA 请编写一个可以监听单击事件的类

鼠标事件要添加mouselistener,捕获mouseevent。mouselistener里的几个事件的参数都是mouseevent,mouseevent提供了获得点击了哪个键的方法getbutton。比如下面这个点击事件处理。

public

void

mouseclicked(mouseevent

arg0)

{

if(arg0.getbutton()

==

mouseevent.button1)

{

//

左键点击

}

else

if(arg0.getbutton()

==

mouseevent.button2)

{

//

中键点击

}

else

if(arg0.getbutton()

==

mouseevent.button3)

{

//

右键点击

}

}

添加监听是addmouselistener方法,取消监听当然就是removemouselistener方法了。

java循环按键循环监听事件

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Arrays;

import java.util.HashMap;

import java.util.Map;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

public class Buttoncall implements ActionListener {

private String[] a = {"1a", "2a", "3a", "4a", "5a" };

private JButton[] jbutton = new JButton[5];

private JLabel[] jlabel = new JLabel[jbutton.length];

//用于记录按钮的点击数

private Maplt;String, Integergt; countMap = new HashMaplt;String, Integergt;();

/**

* 创建一个新的实例 Buttoncall.

*/

public Buttoncall() {

// 创建窗口

JFrame j = new JFrame();

JPanel jpa = new JPanel();// 定义面板组建

/**

* 初始化按钮,及其点击次数(默认0)

*/

for (int i = 0; i lt; jbutton.length; i++) {

jbutton[i] = new JButton(a[i]);// 定义按钮组建

jpa.add(jbutton[i]);// 将按钮添加到面板之中

jlabel[i] = new JLabel("您已点击" + a[i] + "的次数是:0");

jpa.add(jlabel[i]);

jbutton[i].addActionListener(this);

}

j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

j.add(jpa);

j.setTitle("测试使用");

j.setVisible(true);

j.setSize(400, 500);

}

/**

* 单击事件处理.

* lt;pgt;Title: actionPerformedlt;/pgt;

* lt;pgt;Description: lt;/pgt;

* @param actionevent

* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)

*/

@Override

public void actionPerformed(ActionEvent actionevent) {

//获取单击事件组件 名称 如1a

String buttonName = actionevent.getActionCommand();

//在数组中的位置

int index = Arrays.asList(a).indexOf(buttonName);

if (index != -1) {

int count = 1;

//判断map中是否存在当前按钮

if (countMap.containsKey(buttonName)) {

count = countMap.get(buttonName);

count += 1;

}

//记录当前按钮点击次数

countMap.put(buttonName, count);

jlabel[index].setText("您已点击" + buttonName + "的次数是:" + count);

if (count % 10 == 0) {

JOptionPane.showMessageDialog(null, count + "是10的倍数,所以我来提示你!");

}

}

}

public static void main(String[] args) {

new Buttoncall();

}

}

你的这种写法不对,逻辑有问题!

匿名内部类调用的全局变量 i

所以每次点击的时候i的值都等于5,这时候就会数组越界!我给你写了个例子,你参考下!

有问题再追问,good luck!

java按钮点击事件监听的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于监听按钮点击事件的实现方法、java按钮点击事件监听的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-18,除非注明,否则均为首码项目网原创文章,转载请注明出处。