JavaでのFocusListenerインターフェースの重要性は何ですか?
- フォーカスイベントは、コンポーネントがキーボードフォーカスを獲得または喪失するたびに生成されます。 。
- フォーカスイベントを表すオブジェクトは、 FocusEventから作成されます クラス。
- FocusEventに対応するリスナーインターフェイス クラスはFocusListener インターフェース。 FocusEventの各リスナー FocusListenerを実装できます インターフェイス。
- FocusListener インターフェイスには2つのメソッドが含まれていますfocusGained(): リッスンされたコンポーネントがフォーカスを取得し、 focusLost():を取得した直後に、AWTによって呼び出されます。 リッスンされたコンポーネントがフォーカスを失った直後にAWTによって呼び出されます。
構文
public interface FocusListener extends EventListener { public void focusGained(FocusEvent fe); public void focusLost(FocusEvent fe);
例
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class FocusListenerTest extends JPanel implements FocusListener { private JTextField textField; public FocusListenerTest() { setLayout(new BorderLayout()); textField = new JTextField(); textField.addFocusListener(this); add(textField, BorderLayout.NORTH); } public void focusGained(FocusEvent fe) { System.out.println("Text field gained focus"); } public void focusLost(FocusEvent fe) { System.out.println("Text field lost focus"); } public static void main(String args[]) { JFrame frame = new JFrame(); frame.add(new FocusListenerTest()); frame.setTitle("FocusListener Test"); frame.setSize(375, 250); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.setVisible(true); } }
出力
-
JavaでのSwingWorkerクラスの重要性は何ですか?
SwingWorker クラスを使用すると、非同期を実行できます タスク ワーカースレッド(長時間実行タスクなど)で、イベントディスパッチスレッド(EDT )からSwingコンポーネントを更新します。 ) タスクの結果に基づきます。 Java1.6バージョンで導入されました。 SwingWorkerクラス java.swing.SwingWorker クラスはタスクワーカーであり、時間のかかるタスクをバックグラウンドで実行します。 SwingWorker インスタンスは3つのスレッドと相互作用します。現在 スレッド 、ワーカースレッド 、およびイベントディスパッチスレッド(E
-
JavaでのSwingUtilitiesクラスの重要性は何ですか?
Javaでは、Swingコンポーネントが画面に表示された後、それらはイベント処理スレッドと呼ばれる1つのスレッドでのみ操作できます。 。別のブロックにコードを記述し、このブロックにイベントへの参照を与えることができます 処理 スレッド 。 SwingUtilities クラスには、 invokeAndWait()という2つの重要な静的メソッドがあります。 およびinvokeLater() コードのブロックへの参照をイベントに配置するために使用します キュー 。 構文 public static void invokeAndWait(Runnable doRun) throws Interr