問題タブ [awt-eventqueue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3211 参照

multithreading - AWT-EventQueue スレッドと AWT-Shutdown スレッドがシャットダウンしない

アプリケーションで AWT-EventQueue スレッドと AWT-Shutdown スレッドがシャットダウンしていません。なぜそうでないのかを見つけるためのデバッグ手法はありますか? 探すべき特別なものはありますか?

0 投票する
2 に答える
200 参照

java - AWT EventQqueue AccessControlException

システム イベント キューを介して独自のテスト イベント キューをプッシュしています。そして、TestEQueue では、super.dispatchEvent を 1 回呼び出して、dispatchEvent メソッドをオーバーロードしました。

しかし、何らかの理由で、新しい TestQueue でのディスパッチが AccessControlException で失敗します。TestEQueue を使用せずにメイン プログラムで同じイベントが正常にディスパッチされる場合。

両方のキューが同じスレッド グループで実行されるため、これはどのように可能になるのでしょうか? この問題をデバッグするにはどうすればよいですか? これは非常に大規模なテスト コードベースの一部であるため、機能コードをコピーすることはできません。これはセキュリティマネージャーに関連していますか?

0 投票する
1 に答える
1626 参照

java - フォーカス喪失イベントでラジオボタンが選択されるのを待つ方法

いくつかのテキスト フィールドの内容とラジオ ボタンのペア (ボタン グループ内) の設定に基づいて検索を行う Swing プログラムがあります。特定のテキスト フィールドがフォーカスを失うと、プログラムは自動的に検索します。ラジオ ボタンの 1 つをクリックして、フォーカスを失うイベントがトリガーされると、問題が発生します。ラジオ ボタンの isSelected() の値が変更される前に、テキスト フィールドでフォーカスが失われたイベントが処理されるため、ラジオの新しい設定に基づくパラメーターではなく、「間違った」(つまり古い) パラメーターを使用して検索が行われます。ボタン。

イベント キューが落ち着いてから検索を実行するために、独自の invokeWhenIdle メソッド (以下に示す) を使用して検索を呼び出してみましたが、ラジオ ボタンの古い設定がまだ使用されています。

私の唯一の有効な解決策は、検索を実行する前に、フォーカスが失われたイベントで 250 ミリ秒遅延して、ラジオ ボタンが変更される時間を確保することです。これは機能しますが、UI の動作が遅くなります。

より良いアイデアはありますか?

0 投票する
2 に答える
587 参照

java - Java Swing とイベント エラー?

ゲームサーバーを実行していますが、このエラーが発生します。私はまだJavaにあまり慣れていないので、助けてください。木材伐採や採掘などのプレイヤー イベントを処理するイベント マネージャーが 2 人いますが、イベントが正しく停止されていない可能性があります。awt イベント キューとは何か説明できますか?

これは、ゲーム サーバーを 1 日以上実行している場合に発生します。おそらく12時間ごとに発生します。

0 投票する
1 に答える
1992 参照

java - スレッド「AWT-EventQueue-0」での例外

スレッド「AWT-EventQueue-0」の例外 java.lang.UnsatisfiedLinkError: java.library.path に jpcap がありません

jcap へのパスを追加する必要がありますか? または私の設定を変更しますか?

0 投票する
1 に答える
2782 参照

java - データ変更時に Jframe を更新する

jframeを拡張するクラスを作りました。jframeといくつかのコンポーネントのボーダーレイアウトと、いくつかのボタンとjcomboboxを保持する絶対レイアウトのjpanelがあります。コンボ ボックスには、テーブルからのいくつかの値が保持されます。テーブルは mysql クエリから値を取得します。ボタンを使用していくつかのレコードを削除または追加してから、テーブルを更新します。

値を更新しないコンボボックスを除いて、すべてうまく機能します。動作させるには、jframe を閉じてから再度開く必要があります。再描画などに関する多くの記事やチュートリアルを読みましたが、私の場合は何も機能していないようです。アクション リスナーも、jframe を拡張する同じクラスです。

それを行う方法はありますか?私はJavaプログラミングが初めてなので、簡単にしてください。ありがとうございました!

0 投票する
2 に答える
338 参照

java - ファイルからの読み取り時にプログラムがエラーを出すのはなぜですか?

テキスト ファイルからの読み取り中にエラーが発生したようです。このプログラムは、行を読み取り、最初の文字をチェックし、if ステートメントで関連するコードを実行する必要があります。プログラムは最初の行では正常に実行され、内容が出力されますが、次の行は処理できません。使用しているコードは次のとおりです。

そして、私はこのエラーを受け取ります

最初の行はそこにあるはずの出力であることに注意してください。これは、最初の行で正しく動作したことを知る方法です。「テスト 1」も正しく表示されるため、string1.substring の実装に問題があると思われます。これが問題ですか?

0 投票する
2 に答える
1484 参照

java - AWT-EventQueue-0は常に実行されており、プログラムはJavaで非常に遅くなります

私はGUIを書いています。そのGUIには、たくさんの形があります(約200)。ペイント法で描きました。

ある状況では、それらを点滅させる必要があります(2つの色を切り替える)。forループでは、色を変更してからfram.repaint();を変更しています。

しかし、いくつかのボタンをクリックすると、しばらくするとプログラムが非常に遅くなります。プロファイルを介して確認しました(Netbeansを使用しています)。しばらくすると、AWT-Event-Queueが常に実行され始めているのがわかりました。

だから、私は2つの解決策を持つことができます:

別のAWT-EventQueueを追加するAWT-EventQueueを分割する方法はありますか?または200個の図形を点滅させるためのより良い方法はありますか?

ありがとうございました

注:詳細には、pumpEvents、pumpEventsForHierarchy、pumpEventsForFilter、pumpOneEventFilters、...

ペイント方法は次のとおりです。

これがスレッドです:

カラーチェンジャーの方法は次のとおりです。

0 投票する
2 に答える
944 参照

java - 65行目のスレッド「AWT-EventQueue-0」java.lang.NullPointerExceptionの例外を特定するのを手伝ってくれる人はいますか?

スレッド「AWT-EventQueue-0」java.lang.NullPointerExceptionで例外が発生しているという実行時エラーが発生し続けます[行65]ですが、私には基本的なifステートメントのように見えます。私はいくつかの背景を与えることができます。このフレームは一連のフレームから呼び出され、州が選択されると、州 AC 都市を含む新しいフレームに送信されます。この現在のフレームは、アラバマ州が選択されていない場合にのみ機能します。(私は他の状態の他のフレームを作成していないため、コメントアウトされています) 誰かがそれを必要とする場合に呼び出すはずの他のフレームにコードを配置できますが、これは開始するのに多くのコードであると考えましたと。みなさん、助けてくれてありがとう。

PS アラバマを選択したときのエラーは次のとおりです。

0 投票する
2 に答える
2979 参照

java - Java Swing でアイドルタスクを実装する方法

非常に遅くなる GUI アプリがあります。さまざまな GUI タスクのタイミングの導入を開始したいと考えています。ただし、GUI アクションの多くは、他のアクションをトリガーするために「後で呼び出す」他のアクションをトリガーします。

最終的にはすべてが落ち着き、何もする必要がなくなります。この時点で、タイマーを停止して、GUI の「アクション」にかかった時間を報告したいと思います。

これを行う方法は、と呼ばれるメソッドを実装することだと思いましたinvokeOnceIdle(Runnable task)。このメソッドは、AWTEventQueue が「空」になった場合にのみ、指定されたタスクを実行します。つまり、指定された「タスク」はキューの最後にある必要があります。

これを行う 1 つの方法は、「最も低い」優先度を指定する方法がある場合ですがSwingUtilities.invokeLater、これは不可能です。

次に、イベント キューが「空」かどうかを確認する Runnable を「invokeLater」できるかどうかを調べましたが、イベント キューが実際に空かどうかを確認する公的な方法はありません。

これを行う最善の方法は何ですか?