gpt4 book ai didi

java - 如何使用匿名类从 Jcombobox 数组中获取值

转载 作者:行者123 更新时间:2023-12-01 11:18:07 25 4
gpt4 key购买 nike

我有一个 Jradiobuttons 数组。我试图拥有实现 ActionListener 的 java 匿名类,因此当用户按下单选按钮时我可以做一些事情,但由于这是一个数组,我无法使用 while 循环给出数组索引那么如何识别我正在使用的 Jradiobutton。并且我想获取该单选按钮的文本并将其保存在另一个变量中...我该怎么做?

这就是到目前为止我所做的:

if(count!=0) {
rs=pst.executeQuery();
JRadioButton a []=new JRadioButton[count];
jPanel3.setLayout(new GridLayout());
int x=0;
ButtonGroup bg=new ButtonGroup();

while(rs.next()) {
a[x]=new JRadioButton(rs.getString("name"));
bg.add(a[x]);
jPanel3.add(a[x]);
a[x].setVisible(true);

a[x].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {

JOptionPane.showMessageDialog(null,a[x].getText()); //here i cant use this x...even though i make x global value of x always will be 6 becouse of while loop.

}
});
x++;
}
}

最佳答案

如果我理解正确的话,您可以设置单选按钮的名称:

a[x]=new JRadioButton(rs.getString("name"));
a[x].setName(rs.getString("name"));

ActionPerformed 中,您可以获得操作的来源:

public void actionPerformed(ActionEvent e) {

if( e.getSource() instanceof JRadioButton){

String selectedRadioName = ((JRadioButton) e.getSource()).getName();

JOptionPane.showMessageDialog( null, selectedRadioName );

}

关于java - 如何使用匿名类从 Jcombobox 数组中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31554772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com