Saya sedang mengerjakan proyek perguruan tinggi, ia melibatkan pemilihan pengguna dari daftar dan "masuk". Saat ini saya mendapatkan data dari database dan menggunakan loop sementara untuk menambahkan data ke JCombobox:

while(rs.next())
{
    userID = rs.getInt("user_ID");
    fname = rs.getString("fname");
    lname = rs.getString("lname");
    userSelect.addItem(userID + " " + fname + " " + lname);

}

Saya kemudian ingin melewati userid dari item yang dipilih ke JFRAME baru dan hanya userid. Dari sana saya bisa mendapatkan sisa informasi pengguna. Apa cara terbaik untuk mendekatinya? Untuk memecah string?

Saya memiliki tombol kirim yang menjalankan yang berikut ini

@Override
public void actionPerformed(ActionEvent e) {
    if (e.getSource() == select) {
        Object item = userSelect.getSelectedItem();
        System.out.println(item);
        UserDash getDash = new UserDash(item);
        this.dispose();
    }
}
1
IAmAndy 3 April 2021, 02:45

1 menjawab

Jawaban Terbaik

Hanya pembaruan untuk pertanyaan saya dari kemarin. Saya menggunakan yang berikut untuk dapat meneruskan data dari jcombobox ke JFRAME lain

public SelectUser()  {
    // Database Connection & Query Code Here
    while(rs.next())
    {
        Integer userID = rs.getInt("user_ID");
        String fname = rs.getString("fname");
        String lname = rs.getString("lname");
        item = new Object[] {userID, fname, lname};
        userSelect.addItem(new Item(userID, fname, lname));

    }
    private class Item {
        private int userID;
        private String fname;
        private String lname;

        public Item(Integer userID, String fname, String lname) {
            this.userID = userID;
            this.fname = fname;
            this.lname = lname;
        }

        public Integer getUserID() {
            return userID;
        }

        public String getFName() {
            return fname;
        }

        public String getLName() {
            return lname;
        }

        @Override
        public String toString() {
            return "ID: " + getUserID() + " " + getFName() + " " + getLName();
        }

    }

    @Override
    public void actionPerformed(ActionEvent e) {
        if (e.getSource() == select) {
            Item item = (Item) userSelect.getSelectedItem();
            System.out.println(item.getUserID() + " " + item.getFName() + " " + item.getLName());
            UserDash runDash = new UserDash(item.getUserID(), item.getFName(), item.getLName());
        }
    }
}

Saya harap ini membantu siapa pun yang ingin melakukan hal yang sama atau serupa!

0
IAmAndy 3 April 2021, 09:19