2 qq496872668 qq496872668 于 2016.03.06 23:46 提问

java 怎么给按钮设置索引?

我想给按钮4和按钮5添加鼠标单击事件,但是我不知道怎么加,求大神给个方法
import java.awt.*;
import javax.swing.*;
public class yt extends JFrame{
static int t;
public static JButton an;

public static void main(String[] args) {
    JFrame j=new JFrame();
    Container c=j.getContentPane();
    JPanel j1=new JPanel();
    j1.setLayout(new FlowLayout(1,10,10));
    for(t=0;t<10;t++){
         an=new JButton("按钮"+t);
         j1.add(an);
    }

    c.add(j1);


    j.setVisible(true);
    j.setSize(400,300);
    j.setDefaultCloseOperation(EXIT_ON_CLOSE);

}

}

5个回答

xionglangs
xionglangs   Rxr 2016.03.07 15:15
已采纳

public class yt extends JFrame {
public static void main(String[] args) {
anniu();
}

public static void anniu() {
    JFrame j = new JFrame();
    Container c = j.getContentPane();
    JPanel j1 = new JPanel();
    j1.setLayout(new FlowLayout(1, 10, 10));
    for (int t = 0; t < 10; t++) {
        final JButton an = new JButton("按钮" + t);
        j1.add(an);
        an.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println(an.getText());
                if ("按钮4".equals(an.getText())) {
                    System.out.println("按钮4");
                } else if ("按钮5".equals(an.getText())) {
                    System.out.println("按钮5");
                }
            }
        });
    }

    c.add(j1);
    j.setVisible(true);
    j.setSize(400, 300);
    j.setDefaultCloseOperation(EXIT_ON_CLOSE);
}

}

你在对象an上添加监听事件就一直会监听按钮9,因为你的对象for循环里面每次都重新给了个地址,所以an的地址其实就是按钮9的地址,改成这样就可以了。

u013596119
u013596119   Rxr 2016.03.06 23:50
 for(t=0;t<10;t++){
         Button tempb=new JButton("按钮"+t);
                if(t==4){
                    tempb.addActionListener(...);
                }
                    if(t==5){
                    tempb.addActionListener(...);
                }
         j1.add(tempb);
    }

u013596119
u013596119 应该是JButton,少打了个J
2 年多之前 回复
u013596119
u013596119   Rxr 2016.03.07 00:12
ArrayList<Button> buttons=new ArrayList<Button>();
  for(t=0;t<10;t++){
         Button tempb=new JButton("按钮"+t);
                buttons.add(tempb);
         j1.add(buttons.get(t));
    }
        buttons.get(4).addActionListener(...);
Royal_lr
Royal_lr   Ds   Rxr 2016.03.07 09:59

添加一个actionlistener,,事件监听就行了,,

WinsenJiansbomber
WinsenJiansbomber   2016.03.07 10:37

设置按钮属性,查文档找属性

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Java.Swing.button绑定快捷键的3种办法
1.使用button.setMnemonic方法,例如:jbtRemove.setMnemonic(java.awt.event.KeyEvent.VK_D);      注意使用这个方法只能用alt+d才可以使用快捷键,可以看作是绑定了热键。 2.使用button.registerKeyboardAction()方法,这里可以用button.registerKeyboardActio
GUI----如何给按钮添加功能
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; /** * Created by lenovo on 2017/9/
JAVA JButton快捷键设置(组合键+单键)
快捷键: 1、这种设置不适合之处就是一定要加上一个Alt键才行,JMenu,JButton都可用 jButton.setMnemonic(KeyEvent.VK_ENTER);  这是一种较简单的,快捷键是按Alt+enter回车键。  2、若是设置类似“Ctrl+某键”的快捷键方式,JButton不可用,可以直接:  jMenu.setAccelerator(KeyStroke
【mongoDB实战】mongo对某个键添加索引
索引就是用来加速查询的.数据库索引与书籍的索引类似:有了索引就不需要翻遍整本书.数据库则可以直接在索引中查找,使得查找速度能提高几个数量级.在索引中找到条目以后,就可以直接跳转到目标文档的位置.在mongo中建立索引则是需要对查询的条件进行分析.例如:所有的查询条件中,都包括"date"键,那么很可能需要建立一个关于"data"的索引.有时候花费数分钟的查询,不如建立适当的索引可能会即刻完成. 通过以下试验查看建立索引和没有建立索引所用时间的对比.
JOptionPane如何自定义按钮绑定事件
JOptionPane是java方便快捷弹出窗口。虽然没有JDialog那么灵活,但是确实实用。切入正题如何在JOptionPane自定义按钮,这里用到如下方法。 public static int showOptionDialog(Component parentComponent, Object message,
Java中如何设置按钮背景图片大小
最近我在写一个Java项目,其中需要给按钮添加背景图片,这个倒是很简单,困难的是如何调整背景图片的大小,纠结了很久,终于在网上找到了一个解决方法,拿出来和大家分享一下: public void setIcon(String file, JButton iconButton) { ImageIcon icon = new ImageIcon(file); Image temp = ic
【Java源代码】如何在按钮上添加图片背景
new ImageIcon(这里放入图像文件的路径) //此为创建一个对象 getIconWidth() //设置图像宽度 getIconHeight() //设置图像长度还有更多的对图片的操作方法,可查看API文档。下面是加入图片的简单效果源码: package Swing02; import javax.swing.*; import java.awt.*; impo
Java: 设置按钮快捷键
按钮快捷键即将 ALT + ? 设置成快捷键 调用按钮的 setMnemonic()方法即可 例如将 按钮 btnSet 的快捷键设置为 ALT + S 如下方法就可以了 btnSet.setMnemonic(KeyEvent.VK_S);
js基础自定义属性索引值之图片切换实例
无标题文档 body{ background-color: #ccc; } #container{ width:300px; height:400px; position:relative; margin:0 auto; } img{ width:300px; height:400px; } ul{ margin:0; padding:0; list-styl
java中添加按钮并添加响应事件
有些包会帮你自动引入,关于面板,容器等百度一下。private Button LogInbtn = new Button("登陆"); final static JFrame buyerpagemain = new JFrame(); final Container contentPane = buyerpagemain.getContentPane(); contentPane.add(LogI