データベースエントリでいっぱいになっているコンボボックスを作成しました。私が現在直面している問題は、「H」と書くと、必要に応じて「H」で始まるすべての名前がリストに入力されますが、リストの名が自動的に選択されることです。この問題を回避する方法は?
String ch = text.getText();
if (ch.equals("")) {
combo.setVisible(false);
} else {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/userlogin", "root","12345");
Statement st = connect.createStatement();
ResultSet rs = st.executeQuery("SELECT author_name FROM scrpd_authors WHERE author_name LIKE '"+ ch + "%'");
while (rs.next()) {
String name = rs.getString("author_name");
if (name.equals("")) {
searchitems.addItem("");
} else {
searchitems.addItem(rs.getString("author_name"));
searchitems.setVisible(true);
}
}
connect.close();
} catch (Exception ex) {
}
}
コンボボックスには、mysqlクエリに基づいて必要なすべてのエントリが入力されていることに注意してください。問題は、最初のエントリを単独で選択することだけです。