【发布时间】:2015-12-24 18:47:21
【问题描述】:
我正在尝试创建一个搜索栏,它将从 db 中搜索输入的字符串或字符。在文本字段中输入第一个字符时,它应该等待接下来的 200 毫秒,如果在该时间内输入了下一个字符,那么它将重新启动计数器并再次等待接下来的 200 毫秒,否则它将从 db 中搜索。
这是我尝试过但不适合我的一些代码
@FXML protected void keyReleased(KeyEvent evt)throws Exception {
if (evt.getCode() != KeyCode.BACK_SPACE) {
String ch = evt.getText();
String[] myArray = new String[5];
run();
searchFrmDb(ch, myArray);
}
}
public void run(){
for(int i=1;i<5;i++){
try{
Thread.sleep(200);
}catch(InterruptedException e){System.out.println(e);}
System.out.println(i);
}
}
public void searchFrmDb(String ch,String[] myArray){
//db search operation ...
}
我是java新手,帮我解决我的问题
我应该使用什么thread 或Timer 或其他任何东西
【问题讨论】:
标签: java multithreading timer javafx keyrelease