gpt4 book ai didi

java - 根据从数据库中检索到的文本选择 jButton

转载 作者:搜寻专家 更新时间:2023-10-30 23:42:03 25 4
gpt4 key购买 nike

关于将数据库用于 netbeans 中的程序,我又遇到了问题。这是我的问题,我有一个包含男性和女性按钮的按钮组。当您单击“提交”按钮时,所选按钮会将其文本写入 mySQL 数据库。所以问题是,我不知道它的反面。

我会尽可能清楚地说明我的问题。我想从数据库中检索文本并在按钮组的其中一个按钮中选择检索到的文本。

例如,我从数据库中检索了“男性”,所以我想要一个代码来选择“男性”单选按钮。谢谢。

编辑:

所以我现在明白了。我正在寻找一些方法,可以立即从数据库中检索到的文本中选择一个按钮。我使用了粗略的过程,有点乱,但效果很好!

String temp = (jTable1.getModel().getValueAt(row, 11).toString());

    if ("Male".equals(temp)) {
maleRButton.setSelected(true);
}
else if ("Female".equals(temp)) {
femaleRButton.setSelected(true);
}

最佳答案

ButtonGroup 有一个 setSelected(...) 方法,可以帮助您设置它包含的 JRadioButton 之一,并设置它的状态。例如在下面的代码中,我使用 JComboBox 选择一个 JRadioButton 文本,然后使用 ButtonGroup 激活所选的字符串:

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Enumeration;
import javax.swing.*;

public class SelectButton extends JPanel {
private static final String[] TEXTS = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday"};
private ButtonGroup buttonGroup = new ButtonGroup();
private JComboBox<String> comboBox = new JComboBox<>(TEXTS);

public SelectButton() {
JPanel rBtnPanel = new JPanel(new GridLayout(1, 0));
for (String text : TEXTS) {
JRadioButton radioButton = new JRadioButton(text);
radioButton.setActionCommand(text);
rBtnPanel.add(radioButton);
buttonGroup.add(radioButton);
}

comboBox.setSelectedIndex(-1);
comboBox.addActionListener(new ComboListener());
JPanel bottomPanel = new JPanel();
bottomPanel.add(comboBox);

setLayout(new BorderLayout());
add(rBtnPanel, BorderLayout.CENTER);
add(bottomPanel, BorderLayout.PAGE_END);
}

private class ComboListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
String command = comboBox.getSelectedItem().toString();
Enumeration<AbstractButton> elements = buttonGroup.getElements();
while (elements.hasMoreElements()) {
AbstractButton btn = elements.nextElement();
if (btn.getActionCommand().equals(command)) {
buttonGroup.setSelected(btn.getModel(), true);
}
}

}
}

private static void createAndShowGui() {
SelectButton mainPanel = new SelectButton();

JFrame frame = new JFrame("Main");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.getContentPane().add(mainPanel);
frame.pack();
frame.setLocationByPlatform(true);
frame.setVisible(true);
}

public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
}
}

关于java - 根据从数据库中检索到的文本选择 jButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33843794/

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