gpt4 book ai didi

java - 如何在启动时不显示数据库中的数据?

转载 作者:行者123 更新时间:2023-11-30 21:35:11 25 4
gpt4 key购买 nike

我不想在启动时显示数据库中的所有数据。我只想将所有内容留空直到用户不在文本框中键入任何内容。喜欢寻找。请有人帮助我。

private void tKeyReleased(java.awt.event.KeyEvent evt) {                              
//keyboard searching
try{
javax.swing.table.DefaultTableModel dtm=
(javax.swing.table.DefaultTableModel)rTable.getModel();
int rc=dtm.getRowCount();
while(rc--!=0){
dtm.removeRow(0);
}
dtm.setRowCount(0);
String n=t.getText();
db.dbConnect.getUsers.setString(1,"%"+n+"%");
ResultSet rs=db.dbConnect.getUsers.executeQuery();
while(rs.next()){
java.util.Vector row=new java.util.Vector();
row.add(rs.getInt("cid"));
row.add(rs.getString("name"));
row.add(rs.getString("gender"));
row.add(rs.getDate("dob"));
row.add(rs.getString("country"));
row.add(rs.getString("address"));
row.add(rs.getString("language"));
dtm.addRow(row);
}
} catch(Exception ex) {
JOptionPane.showMessageDialog(null, ex);
}
}

最佳答案

您可以将一个 DocumentListener 添加到您的文本字段并检查文本字段的长度是否超过 X 阈值。

注意:就像MadProgrammer一样说要加一个定时器,避免对数据库调用太多。

谢谢MadProgrammer指出这一点。

       JTextField textField = new JTextField(20);

DocumentListener documentListener = new DocumentListener() {

@Override
public void insertUpdate(DocumentEvent e) {
onTextChange();
}

@Override
public void removeUpdate(DocumentEvent e) {
onTextChange();
}

@Override
public void changedUpdate(DocumentEvent e) {
onTextChange();
}

public void onTextChange() {
String text = textField.getText();
if(text.length() > 0){
// display the data
}
}
};

textField .getDocument().addDocumentListener(documentListener);

关于java - 如何在启动时不显示数据库中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54264943/

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