問題タブ [redraw]

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 に答える
1970 参照

iphone - UIViewはリアルタイムで再描画を強制します(描画アプリ)

お絵描きアプリやってます。ストロークをポイントとして収集し、それらのポイントを UIView サブクラスの drawRect メソッドに描画します。

touchesBegantouchesMovedおよびをオーバーライドしてポイントを収集しますtouchesEnded。これらすべてのメソッドで[self setNeedsDisplay]、私が呼び出し、ストロークがリアルタイムで表示されることを期待しています...実際には、drawRect メソッドは後でのみ呼び出されます。touchesEnded

ビューを単に破棄されたものとしてマークする方法が必要ですが、システムにdrawRect呼び出しを強制的に実行させる必要があります。

何か案が ?

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

qt - QtableViewの一部のセルは、テーブルセルをクリックした後に自動的に再描画されません

インタラクティブボードゲームの実装でQTableViewを使用しています。表のセルに画像が表示されます。QStyledItemDelegateとpaint関数を使用して、テーブルセル内に画像を描画しています。

画像はテーブルの特定のセルにのみ表示され、ユーザーがテーブルセルをクリックすると更新される必要があるため、テーブルと同じサイズのdoubleint配列が使用されます。配列の値に応じて、画家はテーブルの特定のセルに画像を描画する必要があります。最初は、テーブルの4つのセル内に4つの画像しかありません。ユーザーがテーブル内のセルをクリックすると、配列が更​​新されます。これは、テーブルのセル内に描画および表示されるものを変更する必要があることを意味します。

通常、ユーザーは正常に更新された空の(白い)セルをクリックすると、特定の画像がセルに表示されます。ただし、画像を含み、更新する必要がある他のセルがある場合、double int配列は更新されますが、更新は表示されません。また、表示が更新されているはずのセルをクリックすると、更新が行われるという奇妙なこともわかりました。もちろん、このコースは、誰かがセルをクリックしたときに更新する方法に関係なく発生します。

再描画する前に、まずセル内の内容を消去しようとしましたが、それでも機能しません。デリゲートはスレッド内で継続的に実行され、ペインタ関数はテーブル内の各セルのインデックスを使用して呼び出されますか?画家がセルの領域を再描画する必要があり、セルをクリックした後にのみ発生するにもかかわらず、画像を含むセルの更新が自動的に更新されない方法がわかりません。または、そのcusは、毎回新しい画家が画家の機能に呼び出されますか?!

さて、これが代表者の画家の機能の私の実装です:

私の問題を解決する必要がある場合は、さらに情報を提供できます。前もって感謝します。

0 投票する
0 に答える
745 参照

android - 1 つのビューにアニメーションを適用すると、Android がすべてのビューを再描画する

いくつかのビューを持つ 1 つのレイアウトを含むアプリケーションがあります。1 つのビューをアニメーション化すると、すべてのビューが再描画されます! それは通常の動作ですか、それとも何か間違ったことをしていますか? この動作をキャンセルして、手動で無効にしたビューを再描画したいのですが、ありがとうございます

私は2つのカスタムビューとsecondsArcビューが毎秒アニメーション化されていると言っているので、毎秒10回再描画される問題は、MinutesArcも再描画されることです! 問題は、私には約10のビューがあり、すべてが毎秒10回再描画されることです。このメソッドは、SecondsArcで呼び出されて回転します

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

css - マウスオーバーでIE7がDOM要素を移動するのはなぜですか?

したがって、2 つの列と 1 つの行しかないテーブルがあります。2 番目の td はイメージを保持し、最初の td はテキストを保持します。画像を含む td をその画像を可能な限り最小サイズにし、最初の td で残りのスペースを埋めたいと思います。以下は、IE7 を除くすべてのブラウザーで機能します (IE6 は実行していません)。

<table> <tr><td style="width:100%;">TEXT</td><td><img src="jpg" alt="jpg" /></td></tr> </table>

何が起こるか: ページが正しくレンダリングされた後、テーブルの上にマウスを置くと、最初の td がテーブル全体を埋めるように拡張され、画像が端から押し出されます。

画像の幅を測定し、最初の td の残りを計算する jQuery でこれを修正できます。しかし、その解決策はLAMEでいっぱいです!

助けてください。IE7 がそのように再描画する必要があると感じる理由がわかりません。

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

android - ビューは再描画されません

ユーザーがメニュー オプションを選択すると、onMenuItemSelected でキャッチして呼び出します

findViewById(R.id.xyz).setVisibility(View.VISIBLE);

しかし、景色は見えません。再描画を強制するためにあらゆる種類のことを試しましたが、再描画されません。

アイデア?

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

iphone - iPhone - 状態が変化したボタンを更新/再描画するにはどうすればよいですか?

現在、NSNotifications を使用して、アプリ デリゲートから iPhone アプリケーションの UIView にメッセージを送信しています。

通知は UIView によって受信され、セレクターを使用して UIView のボタンの状態を変更します。

セレクターに渡される関数は次のとおりです。

これは呼び出されますが、ボタンの状態が視覚的に変化することはなく、機能的には無効になりますが、画面上ではまだ有効になっているように見えます。

setNeedsDisplay がここで機能しないように見えますか、それとも私のコーディングが間違っているのでしょうか?

状態を変更したときにボタンまたはビューを適切に再描画する方法を誰かに教えてもらえますか?

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

android - カスタム ビューが不必要に再描画される

以下に示す XML のように、カスタム ビューcom.mydomain.android.KTabを作成しました。上部にFrameLayoutがあり、下部にカスタム ビューがあります。

次のコードのように、ScrollView をFrameLayoutにプログラムで追加します。

表面から見るとうまく機能しますが、 contentFrameをスクロールすると、カスタム ビュー (この場合はKTab ) の onDraw() メソッドが常に呼び出されます。カスタム ビューがスクロールの影響を受ける理由がわかりません。不要。

誰でもこれについて手がかりを与えることができますか?

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

c - メインウィンドウの位置を移動した後、またはメッセージボックスをポップアウトした後、リストボックスコントロールが再描画されませんでした

これが私のwin32アプリのスクリーンショットです(ダイアログボックスベース、非MFC):

ここに画像の説明を入力

追加ボタンをクリックすると、11: 22 testのようなデータが下のリストボックスに追加されます。

しかし、メインのダイアログボックスを移動した後、リストボックス自体が再描画されなかったと思われる以下の画像のように、リストボックスの項目が消えます。

ここに画像の説明を入力

追加ボタンをクリックして新しいリスト項目をリストボックスに追加すると、リスト項目が再び表示されます。その後、ダイアログを移動しても空のリストボックスが表示されなくなりました。メインダイアログをデスクトップの端に移動し、リストボックスを非表示にします。またはメッセージボックスをポップアウトすると、リストボックスアイテムも消去されます。

ここに画像の説明を入力

完全な C コード:

完全なリソース スクリプト コード:

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

android - AndroidはUIスレッドが無効になるのを待ちます

ペイントアプリでビューを再描画するのに問題があります。タッチが終了したら、touch_up()を呼び出してパスを作成し、invalidate()を呼び出してパスを描画し、storeView()を呼び出して現在のビューをスタックにプッシュします。ただし、ビューはまったく再描画されません(次のタッチまで、ひねくれた効果が得られます)。storeView()の呼び出しを削除すると、すぐに再描画されます。

ここから、問題がinvalidate()であることがすぐに発生するとは限らないことを理解し、それを待つために新しいスレッドまたはハンドラーを作成する必要があると思います。開発ページを読んだにもかかわらず、私はそれを実装する方法を完全には理解していません。

それは本当に私がする必要があることですか?ビューが再描画されるまでstoreView()を待機させるにはどうすればよいですか?私はこれとしばらく戦ってきました、答えは私の日を作るでしょう。ありがとう!

これが私が現在していることです。

Action_up:

Touch_up:

storeView:

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

objective-c - NSScrollView 内のコンテンツを強制的に再描画する方法

NSTextView + NSImageView + NSMatrix + NSTextView を NSScrollView に入れました。そして、次のコードを使用して、このスクロールビューを上にスクロールします-

しかし、問題は、ビューがめちゃくちゃになるまでスクロールを終了することです..ここにスクリーンショットがあります -

ここに画像の説明を入力

これを使用して、運が悪くてもコンテンツを強制的に再描画しようとしました-

なぜこれが原因で、どのように解決すべきか誰にも分かりますか?

編集 1 - マウス スクロールを使用してビューをスクロールすると、singleScrollView の一部が正常に表示されます。これがこのスクリーンショットです - ここに画像の説明を入力