私はと呼ばれるjListを持っていますtodoList
ユーザーがリスト内の項目をクリックすると、選択されたままになります。しかし、マウスがjListを出る400ミリ秒後に、リストで現在選択されている項目を「単独で」選択解除したいと思います。
これは、リストで既に選択されているものがある場合にのみ実行する必要があります。
私はNetbeans IDEを使用していますが、これはこれまでに試したことです:
private void todoListMouseExited(java.awt.event.MouseEvent evt) {
if (!todoList.isSelectionEmpty()) {
Thread thread = new Thread();
try {
thread.wait(400L);
todoList.clearSelection();
} catch (InterruptedException ex) {
System.out.println(ex);
}
}
}
と
private void todoListMouseExited(java.awt.event.MouseEvent evt) {
if (!todoList.isSelectionEmpty()) {
Thread thread= Thread.currentThread();
try {
thread.wait(400L);
todoList.clearSelection();
} catch (InterruptedException ex) {
System.out.println(ex);
}
}
}
これらは両方とも、すべてが機能しなくなるだけです。
私のプロセスは、400ミリ秒待機してからjListのclearSelection()メソッドを実行する新しいスレッドを作成する必要があるということでした。これは、マウスがリストを終了するたびに発生し、リストに既に選択されているものがある場合にのみ実行されます。
私の問題を十分に説明していることを願っています。