問題タブ [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 投票する
2 に答える
2495 参照

java - コンポーネントをループで再描画する

私は単純なゲームを作成しており、移動するたびにボードを再描画したいと考えています。したがって、move() を呼び出した後、次のことを実行したいと思います: (ちなみに、View はピースを保持する JComponent です。移動後にピースの数が変更されたため、再描画する必要があります)

動いていない。repaint()単一のビューを呼び出すと、正常に動作します。paintImmediately、およびrevalidate、および...を使用してみupdateましたが、ループ内では何も機能しません。

何か案は?前もって感謝します。

編集:ウィンドウのサイズが変更されたときにrepaint()が呼び出されることを追加する必要があるため、ViewのpaintComponentメソッドが有効で機能することがわかります。ループから呼び出されていないだけです。デバッガーがループを通過するとき、repaint() に入らず、画面には何も起こりません。

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

java - Javaリペイントイメージ

スクリプトに問題があります。ボタンが押されたときに新しい画像(別の画像が表示されています)を再描画したいのですが、ボタンは何もしません...

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

wpf - WPF 4.0 で再レンダリングを強制する

このコードを使用して、処理が開始される前に進行状況ビューを強制的にペイントしようとしています:

基本行動注入。私がこれをしなければならない理由は、それ以外の場合は、何をしなければならないかが完了するまで進行状況メッセージが表示されないためです。私は試しUpdateLayoutていますがMeasure、どちらも機能しません。WPF で間違ったことをしているとみんなに言われます。2 番目のスレッドまたは Dispatcher 呼び出しで実行しているすべてのプロセスをラップする必要がありますか? それは醜いようです。

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

java - 遅延のあるループで JPanel を再描画する

並べ替えがループするたびに、配列を表す一連のバーを描画することにより、さまざまな並べ替えアルゴリズムを視覚化するプログラムを作成しようとしています。ただし、パネルを再描画するソータークラス内から配列を設定すると、最初と最後の反復でのみ paintComponent() が呼び出され、その間のステップが表示されないようです。

setNumberArray() メソッドを呼び出す並べ替えコードは次のとおりです。

どの呼び出し:

最後にバーを描画します:

「。仕分けを始めるとき。

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

c# - Windows フォームが再描画されない

私は C# は初めてですが、長い間 VB6 でプログラミングしてきました。エラーなしで実行される非常に単純なプロジェクトがあります。ただし、Windows 自体に関係する問題が 1 つあります。(他のプログラムから) ウィンドウを開き、そのウィンドウがアプリケーションに重なっている場合...その「他のウィンドウ」を閉じた瞬間、アプリケーションのウィンドウは「他のウィンドウ」によって重なった部分を再描画しません。

Windows Vista で Bubbles スクリーンセーバーが起動するたびに、同じことが起こります。マウスを揺らしてスクリーン セーバーをキャンセルすると、どうなるでしょうか? 窓全体に気泡が散らばっています。VB では、単純な "Window.Refresh" がありました。ただし、C# では、これは機能しません。私はフォーラムを精査しましたが、「スレッドを更新する」という言及があるようです。この時点でちょっと混乱しています。なぜ物事は単純にならないのですか??

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

java - repaint() を呼び出しても何も描画されないのはなぜですか?

まず第一に、私は初心者です。s の配列を使用してパズル ゲームを作成しようとしていPieceます。それぞれPieceが 1 から 9 までの数字を表していpaintComponent(Graphics g)ますrepaint()。エラーはありませんので、私が気づいていない点があるはずです。

NetBeans を使用しています。新しいデスクトップ アプリケーションを作成し、 と を追加しましJPanelJButton

これは私のコードです:

repaint()ボタンをクリックしたときにメソッドを呼び出そうとしています。

クラスは次のPieceとおりです。

これは最初のステップにすぎません。やるべきことがたくさんあります。でも、やり方public void paintComponent(Graphics g)repaint()働き方を完全に理解するまで先には進めません。

ですから、助けていただければ幸いです。

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

java - GUI の更新時にスレッドで例外が発生する

私の問題は単純ですが、コードは複雑で、答えを見つけるのは簡単ではありません。そのため、助けを求めています。

私はマルチスレッドアプリケーションをプログラミングしています.これがどのように機能するかです:

1) 1 つのスレッドがファイルを読み取り、テキストファイルから情報を解析しています (500 ミリ秒ごとにファイルの最後に到達しようとします)。

2) 関連する情報が見つかると、スレッドはそれを保存し、オブザーバーであるコントローラーに通知します。

3)コントローラーに通知されると、ユーザーに表示したい情報を更新する他のスレッド(GUI)に通知します。

GUI があまりにも頻繁に更新されるため、私が呼び出すrevalide()validate()、または例外がある場合を除きます。repaint()

500ミリ秒ごとrevalidate()にGUIを試行する別のスレッドを実行することを考えましたが、より良い代替手段があるかもしれません。呼び出す前にGUIスレッドを停止してから再開するなど、心配する必要があることはありrevalidate()ますか?


はい、パネルからコンポーネント (JLabels) を削除して、新しいデータのコンポーネントに置き換えます。私はあなたが言ったことを試してみます。

ところで、invokelater と start like another thread に大きな違いはありますか?


解決 :

次のようなメソッドを作成しました。

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

c# - C# ユーザー コントロールの再描画

メインフォームといくつかのカスタム ユーザー コントロールを含む C# アプリケーションがあります。

メインフォームを移動すると、ユーザー コントロールが再描画を続け、メインフォームの移動を停止すると再び再描画されます。

この再描画を無効にするにはどうすればよいですか?

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

java - Swingの要素の再描画が完了するのを待っています

repaintSwingの完成を待ちたいです。

例:

私はこのようなものを持っています:

これは正しい方法ですか?