問題タブ [repaint]

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 投票する
4 に答える
4596 参照

java - 別の JPanel 内での JPanel の問題の再描画

this 内に形状を描画していますJPanelが、これは別の main 内にもありJPanelます。1repaint()ミリ秒だけ形状を描画し、その後消えます。ペイントされたままにならないのはなぜですか?

私のpaintComponent方法はこのようなものです

親が有効になっている場合JEditorPanesetEditable()それは機能し、形状を見ることができますが、それが の場合JPanel、ミリ秒後に空のパネルしか表示されません。

0 投票する
3 に答える
539 参照

java - JMenuBar を「カスタム」JPanel にドロップダウンして「消去」

のは JFrame に追加されたJMenuItemsJMenuBarドロップダウンしますJPanelが、JPanel は を消去しJMenuItemsます。
JPanel の再描画を一時停止する必要がありますか? 画像を描画するために on
を使用しています。このメソッドは、(たとえば) 200 ミリ秒の遅延でスレッドから呼び出されます。getGraphics()JPanel

編集
これは(非常に単純な)ゲームJPanelです. ( JPanel に
フィールドを追加し、 paint メソッドを編集して、 の場合にのみ再描画するようにしましたが、この「解決策」が適切かどうかはわかりません。 (ユーザーがメニューを選択またはキャンセルするときに設定します。)pausedJPanelpausedfalsetruefalse

0 投票する
3 に答える
1694 参照

java - 特定の条件下で Java の再描画が遅い

各正方形がカーソルで強調表示される単純なグリッドを作成しています: 代替テキスト

これらは、JLayeredPane 内の 2 つの JPanel、mapgrid、およびオーバーレイであり、下部に mapgrid があります。Mapgrid はグリッドの初期化時に描画するだけで、その描画方法は次のとおりです。

オーバーレイ JPanel では、ハイライトが発生する場所です。これは、マウスが移動したときに再描画されるものです。

マウスの移動時にベース レイヤー (mapgrid) が再描画されず、透明なオーバーレイ レイヤーだけであっても、パフォーマンスが不足していることに気付きました。オーバーレイ JPanel に背景を与えると、その方法は速くなります。mapgrid Antialiasing を削除すると、少し速くなります。

オーバーレイ レイヤーに背景を与える (したがってマップグリッドを非表示にする) か、マップグリッドでアンチエイリアシングを無効にすることで、パフォーマンスが大幅に向上する理由がわかりません。

これを行うより良い方法はありますか?なぜこれが起こるのですか?

0 投票する
5 に答える
37507 参照

javascript - リフローとリペイントの違いは何ですか?

リフローとリペイントの違いが少しわかりません(違いがある場合)

リフローがさまざまなDOM要素の位置をシフトしているように見えます。ここで、リペイントは新しいオブジェクトをレンダリングしているだけです。たとえば、要素を削除するとリフローが発生し、色を変更すると再ペイントが発生します。

これは本当ですか?

0 投票する
6 に答える
4818 参照

javascript - JavaScript関数の進行状況を報告する方法は?

非常に長く、多くのタスクを実行するJavaScript関数があります。進行状況を、メッセージでSPAN要素の内容を更新してユーザーに報告したいと思います。関数コード全体にdocument.getElementById('spnProgress')。innerText=...ステートメントを追加してみました。

ただし、関数の実行中はUIが更新されないため、SPANに書き込まれた最後のメッセージのみが表示されます。これはあまり役に立ちません。

私の現在の解決策は、タスクをいくつかの関数に分割することです。各関数の最後にSPANメッセージを設定し、非常に短い遅延(たとえば、10ミリ秒)でwindow.setTimeout呼び出しを使用して次のメッセージを「トリガー」します。これにより制御が可能になり、ブラウザは次のステップを開始する前に、更新されたメッセージでSPANを再描画できます。

しかし、これは非常に厄介でコードに従うのが難しいと思います。もっと良い方法があるはずだと思います。誰か提案はありますか?関数のコンテキストを離れることなく、SPANを強制的に再描画する方法はありますか?

ありがとう

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

qt - 別のQtクラスを塗り替える方法

私はQtの新しいビットです...

Qt GUIアプリケーション(自分で作成)があります。QtAPP.exeと呼びましょう。QtAPP.exeを実行しているときは、QThreadとQProcessを使用して、player.exe(ネイティブCで作成)などの外部ファイルを実行します。

これが私の質問です:QtAPP.exeには、2つのクラスがあります。1。QMainWindow-QtAPP.exeのコア2.QThread-外部のものを実行するためのスレッドクラス

今のところ、そのQThreadでfinished()シグナルを受け取った場合、QMainWindowにそれ自体を再描画させるにはどうすればよいですか?

誰かが私にいくつかのヒント、多分サンプルコードを見せてくれることを願っています:)どんな提案も歓迎します〜

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

java - スイングボタンの再描画の問題

私はJavaが初めてで、日曜日までに学校のプロジェクトを終わらせなければならず、問題が発生しました。

コードは次のとおりです。

putShip* ボタンの 1 つがクリックされると、それ自体のアイコンが右に 90 度回転する (次の画像に変更されることを意味します) 必要がありますが、パネルが別のパネルに変更される startButton がクリックされるまで何もしません。(最初のボタンの actionListener のみがここにあり、他のボタンは実質的に同じです)。パネルは JFrame 内にあり、他の 2 つのパネルはまだ何もしていません。

どうすれば適切に機能させることができますか?

ありがとうございました。

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

c# - 最小化された状態から復元された後、フォームを再描画するにはどうすればよいですか?

ボタンをクリックするとすぐに波形が表示される、ボタンクリックで波形をペイントするフォームがあります。フォームを最小化して再度最大化すると、波形が消えます。再描画するにはどうすればよいですか?ペイントイベントを使用している人を見たことがありますが、ボタンクリックイベントの後/内部での使用方法がわかりません。助けてください。

0 投票する
3 に答える
3048 参照

c# - WinForms での低速で CPU を集中的に使用するスクロールの高速化

WinForms アプリで UserControls のスクロールを高速化するにはどうすればよいですか?

私のメイン フォームは、低速のマシンですばやくスクロールするのに問題があります。小さなスクロール単位ごとにペイントすると、CPU が集中的に使用されます。

私のフォームには、およそ 50 個の UserControls (複数のフィールドを持つ) が上下に配置されています。非常に小さなスクロール イベントの不要な再描画を排除するために、OnScroll と UserPaint をインターセプトしようとしましたが、基になる Paint がとにかく呼び出されます。

低速のマシンでスクロールを合理化するにはどうすればよいですか?