【问题标题】:JComboBox error blocking another field displayJComboBox 错误阻止另一个字段显示
【发布时间】:2021-09-21 09:39:00
【问题描述】:

JComboBox 有问题。它阻止了框架中的另一个字段,该字段旨在显示通过数据库中的外键链接的另一个值,该值取决于已经弹出的组合框。但不知何故,在用户单击组合框后,它会阻止另一个字段。该应用正在使用 MySql。

代码如下:

从 DB 中填充值的 ComboBox 方法

public void comboBoxBerat(){
        DbConnection DB = new DbConnection();
        DB.DbConnection();
        con = DB.con;
        stat = DB.stmt;
        try {
            sql = "SELECT * FROM weight_of_services";
            rs = stat.executeQuery(sql);
            
            while (rs.next()) {
                jComboBoxBerat.addItem(rs.getString("weight"));
            }
            con.close();                      
        } catch (Exception e) {
            JOptionPane.showMessageDialog(this, e.getMessage());
        }
    }

从组合框中进行选择时的动作,它获取与外键链接的值

private void jComboBoxBeratActionPerformed(java.awt.event.ActionEvent evt) {                                             
        DbConnection DB = new DbConnection();
        DB.DbConnection();
        con = DB.con;
        stat = DB.stmt;
        
        String item = (String)jComboBoxBerat.getSelectedItem();
        String sql = "SELECT price FROM weight_of_services WHERE weight = ?";
        
        try {
            pst = con.prepareStatement(sql);
            pst.setString(1, item);
            rs = pst.executeQuery();
            
            if (rs.next()) {
                String price = rs.getString("price");
                txtHargaBerat.setText(price); //put value from combobox to txtField
            }
            con.close();
        } catch (Exception e) {
        }
    }

我从框中选择它阻塞另一个字段后的问题。

这是框架中的组合框问题

【问题讨论】:

    标签: java mysql swing jframe jcombobox


    【解决方案1】:

    解决了。这是因为我使用 jpanel 来自定义框架的颜色。它只是将一个面板堆叠在另一个面板上而变得如此混乱。这就是我的下拉列表被阻止的原因。所以我做了什么,删除了所有面板。从一开始就更仔细、更整洁地自定义和排序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 1970-01-01
      相关资源
      最近更新 更多