单选按钮使用什么setter?

radio button use what setter?

我的值是从数据库中获取的 (mysql)。

如果在文本字段中,将是这样的: txtMID.setText("" + rs.getString("menu_id"));

在这样的组合框中吗? cmbMCat.setSelectedItem("" + rs.getString("menu_cat"));

单选按钮怎么样?我认为使用 if-else 条件。但是我不明白如何编写代码

我的单选按钮设置在编码结束时:private String type;

这里是按钮:

private void rbMFoodActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        showCategory();
        type = "Food";

    }                                       

    private void rbMDrinkActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
        showCategory();
        type = "Drink";

这是我的 showCategory();

private void showCategory() {
        try {
            cmbMCat.removeAllItems();
            Statement stmt;
            stmt = con.createStatement();

            if (rbMFood.isSelected()) {
                ResultSet rs = stmt.executeQuery("SELECT * FROM menu_cat WHERE type_id = 'TY02'");
                while (rs.next()) {
                    cmbMCat.addItem(rs.getString("menu_cat"));
                }

            } else {
                ResultSet rs = stmt.executeQuery("SELECT * FROM menu_cat WHERE type_id = 'TY01'");
                while (rs.next()) {
                    cmbMCat.addItem(rs.getString("menu_cat"));
                }

            }
        } catch (Exception e) {
        }

拜托,我真的需要你的帮助T__T问我的问题是否因为我的英语不好而让你感到困惑。

您好首先您的问题不清楚。以下建议是基于我对您问题的理解。
加载应用程序时,您希望根据来自数据库的数据 (mysql) 初始化 UI 组件。
因此您将从数据库中获得关于该单选按钮的真或假字段

if(true)
   rbmFood.setSelected(true);
else
   rbmDrink.setSelected(true);

我想你必须设置根据数据库选择的单选按钮。为此,请使用以下逻辑。

private void showCategory() {
    try {
        cmbMCat.removeAllItems();
        Statement stmt;
        stmt = con.createStatement();
        switch(type) {
            case "Food":
            rbMFood.setSelected(true);
            break;
            case "Drink";
            rbMDrink.setSelected(true);
            break;
        }
        if (rbMFood.isSelected()) {
            ResultSet rs = stmt.executeQuery("SELECT * FROM menu_cat WHERE type_id = 'TY02'");
            while (rs.next()) {
                cmbMCat.addItem(rs.getString("menu_cat"));
            }

        } else {
            ResultSet rs = stmt.executeQuery("SELECT * FROM menu_cat WHERE type_id = 'TY01'");
            while (rs.next()) {
                cmbMCat.addItem(rs.getString("menu_cat"));
            }

        }
    } catch (Exception e) {
    }
}

加载记录时,您应该有一个值可以确定您正在加载的数据类型,例如 type_id 似乎是根据选择 JRadioButton 来使用的。

您将从 ResultSet 中提取此值,并使用 if-else 语句或 case 语句来确定要选择的单选按钮

String type = rs.getString("type_id")
switch (type) {
    case "TY01":
        rbMDrink.setSelected(true);
        break;
    case "TY02":
        rbMFood.setSelected(true);
        break;
    // Other possible cases...
}

这假定 JRadioButton 属于同一个 ButtonGroup,因此选择一个将取消选择另一个。

仔细查看 How to Use Buttons, Check Boxes, and Radio Buttons 了解更多详情