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

winforms - .NET WInForms の 32 ビットではなく、64 ビット Vista では再描画の問題が発生する原因は何ですか?

これは、Any Cpu 用にコンパイルする場合と x86 にコンパイルする場合に発生します。GUI のセクションは、サイズが変更されない限り再描画されません。たとえば、メイン フォームが最大化された場合、一部のコントロールはサイズ変更されず、他のコントロールには再描画されないセクションがあり、以前にあったものを表示します。

これは、XP と Vista の両方の 32 ビット マシンでは問題なく動作しますが、64 ビット Vista (テストする x64 XP がない) では再描画が正しく動作しません。

これをどこから追跡し始めるかについて、誰かアイデアがありますか?

編集:これは2台の別々のマシンで発生し、少なくとも現在使用しているマシンにはNVidiaの最新ドライバーがあります。

Edit2: 64 ビット マシンで 32 ビット XP 仮想マシンを実行すると、アプリケーションは VM で再描画の問題を示さない

Edit3: ドライバーの問題かもしれませんが、ドライバーが問題を修正するかどうか、いつ修正するかはわかりません。同僚は、NVidia よりも自宅で ATI カードを使用する方が問題が少ないと言っていますが、私はビデオ ドライバーをほぼ毎月更新してきましたが、この数か月間、まだ解決されていないため、製品をリリースすることはできません。そして、いつの日かドライバーの製造元がこれを修正する可能性があることをお客様に伝えてください.

何を避けるべきかについての洞察を持っている人はいますか? x86 としてコンパイルしており、すべてのコンポーネントは x86 です。テスト プロジェクトのどのコンポーネントでもこの問題を再現できないようです。また、ほとんどのコンポーネント フォーラムでこれらの問題を報告した人が他にいないので、私たちが行っていることである可能性がかなり高いです。

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

wpf - WPFリストボックスが再描画されない

XAML で次のように定義されたリストボックスがあります。

SelectedDirectories は、タイプのリスト DataContext のプロパティです。List<DirectoryInfo>

リストボックスのデータ コンテキストであるクラスは、INotifyPropertyChanged を実装します。コレクションが変更されると、アイテムがリストに正常に追加されますが、リストボックスのサイズを変更して強制的に再描画するまで、表示は更新されません。

理由はありますか?

編集: INotifyPropertyChanged 実装

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

javascript - JQuery UI Draggable 要素の開始イベント ハンドラー中に css 位置の変更を有効にするにはどうすればよいですか?

ユーザーがドラッグを開始するとすぐに、ドラッグ可能な要素の位置を変更する必要があるという奇妙な状況があります。そのため、ドラッグ可能な要素の開始イベント ハンドラー中に、位置を設定しようとしています。位置を変更した後、JavaScript エラーが発生するようなことをしない限り、位置の変更に応答しません。これは奇妙です。次に例を示します。

このコンテキストで合法的に再描画を発生させるにはどうすればよいですか? JQuery の hide() と show() は機能せず、これらのメソッドも機能しません。

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

apache-flex - Flexに画面の更新を強制しますか?

これは少し初心者の質問かもしれませんが、私は一生それを理解することはできません。

私はflexを使用して、大規模なプロジェクトのGUI、具体的には下部にあるステータスバーを開発しています。私のStatusBarクラスにはProgressBarがあり、作業を行っている他のクラスは、進行中に更新(バーの完了とラベルの変更)を指示できます。私が直面している問題は、たとえば手遅れになるまで、flexが画面に表示されているものを更新しないことです。

ProgressBarが初期化され、0%完了
いくつかのクラスがProgressBarを12%完了に設定
いくつかのクラスがいくつかの作業を実行
いくつかのクラスがProgressBarを56%完了に設定

何が起こっているのかというと、12%完了は表示されず、作業中は0%でハングし、56%完了までスキップします。フレックスコンポーネントのライフサイクル(無効化と検証)を理解しようとしましたが、理解して正しく適用していると思いますが、まったく機能していません。一部のクラスが12%完了に設定した後、一部のクラスが作業を開始する前に、FlexにStatusBar(または少なくともProgressBar内)を再描画するように指示する必要があります。どうすればよいですか?

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

layout - SWT の更新 / 再描画 / レイアウトの問題

多くの人がこの問題を経験していることは知っていますが、私がオンラインで見つけた解決策は私のものを解決していないようです. 3 つのボタンを持つコンポジットがあります。私が欲しいのは次のとおりです: 1 つのボタンをクリックすると、他のボタンをグレー表示 ( setEnabled(false) ) し、しばらくすると (メソッドの実行後)、ボタンを再び有効にしたいと考えています。

このような問題の多くは、親コンテナーで layout() メソッドを呼び出すことによって解決されます。または、これと非常によく似た問題は、Display.getCurrent().update(); を呼び出すことによって解決されます。

簡単に言えば、私のコードは次のように要約できます。

何が起こるかというと、widgetSelected() メソッドの最後に到達するとボタンが無効になります。ただし、ラベルは問題なく頻繁に更新されます (label.update() メソッドが存在しない場合でも)。

追加情報: たとえば、ボタンを無効にしてから Thread.sleep() を配置してからボタンを有効にします。最初にスリープし、すぐにボタンを無効にしてから有効にします。したがって、そのようなペイント要求はすべてキューに入れられ、実行の最後に処理されると思います。

役立つ情報:表示が変更された直後に MessageBox を作成して表示すると、表示が変更されることに気付きました。したがって、widgetSelected メソッドで次の変更を行うと:

widgetSelected() メソッドが呼び出されるとすぐに、ボタンはグレー表示されます。これは、私の解決策が Display.getCurrent() メソッド内にあると信じさせます。しかし、私は試しました

メソッドとそれらは私の問題を解決しませんでした。

ありがとう、エゲ

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

graphics - SilverlightDataGridの再描画の問題

ユーザーコントロールを表示する単一のテンプレート列を含むSilverlightDataGridがあります。ユーザーコントロールには、処理を表すプログレスバーがあり、処理が完了すると、アニメーションによってプログレスバーが非表示になり、完成したラベルが表示されます。

データグリッドがそれ自体を再描画しないように見える2つのインスタンスがあります。

まず、ユーザーが多くのスクロールを行うと、データグリッドはユーザーコントロールが表示されたときにアニメーションを再描画することから始まり、最終的に何も再描画しないポイントに到達します。

次に、ポップアップを表示するクリックイベントがユーザーコントロールにあります。ポップアップが閉じられると、ユーザーコントロールはそれ自体を適切に再描画できなくなります。

この動作が発生する理由とその回避方法に関するアイデアはありますか?

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

actionscript-3 - フレックスアプリケーションでグリッチ画面が再描画されますか?

Flex/actionscript ベースのプロジェクトがあります。プロジェクトには、さまざまなビュー スタックとタブ ナビゲーター、およびいくつかのポップアップ ウィンドウがあります。すべてが pureMVC フレームワークで管理されます。

さまざまなビュー ステート間を遷移するとき、ポップアップを開くとき、タブを切り替えるときなどに、アプリでさまざまな再描画の不具合が発生することがわかりました。ビューの一部が部分的に描画されるか、奇妙な方法でちらつきます。コードが正しく機能していることはかなり確信していますが、UI の全体的な重さに問題があるようです。

これはよくある問題ですか?この問題を最適化するための実証済みの真の手法はありますか?

特に、すべてを画面にすばやく表示する準備が整う最後の瞬間まで、ビュー コンポーネントの描画を遅らせるために使用できるイベント ハンドラは何ですか?

たとえば、ビュースタック内に VBox があり、この VBox 内にかなり複雑なデータグリッドがあるとします。すべてのサブビュー コンポーネントが実際にすばやく描画される準備ができるまで、データグリッドを準備したり、ビュースタックの変更を遅らせたりできますか。

この種の不具合にはどのような症状が考えられますか?

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

visual-studio-2008 - CTRL-SHIFT-FがVisualStudioのデスクトップにいくつかのウィンドウを再描画するのはなぜですか?

私は3つのモニターをセットアップしていて、通常Visual Studio 2008を開いて、別の画面や他のいくつかのウィンドウでヘルプを表示しています。Ctrl-Shift-Fを押して[検索と置換]ダイアログを開くと、デスクトップがデスクトップにいくつかのウィンドウを再描画し始めます。それは私のためにそのダイアログを開くのを非常に遅くします。

ところで。これは、プルダウンメニューでそのダイアログを開いたときにも発生します。興味深いことに、これはC++ソリューションのプロジェクトプロパティのような他のウィンドウでは発生しません。他のウィンドウは再描画されません。

VSまたは他のすべてのアプリで問題が発生したかどうかはわかりませんが、たとえば、msdnヘルプブラウザーも再描画しますが、ビスタエクスプローラーでは問題が発生しません。または表示されません。

これに対する回避策はありますか?開いているウィンドウの数によっては、このダイアログを開くのに15秒かかる場合があります。

よろしくマーク

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

android - Android: 壊れた PreferenceActivity ビュー

に基づいたかなり控えめな設定画面があります PreferenceActivity。(アプリで見ることができますDroidIn)更新後に画面を再描画することに関係していると思われる問題がいくつかあります。症状は次のとおりです。

  1. OnPreferenceChangeListener#onPreferenceChange新しい値を実行して設定の概要を変更するとPreference#setSummary、古い値の上に塗りつぶされて見苦しい効果が生じます
  2. 私の環境設定画面は、ユーザーがスクロールしなければならないほど大きいです。スクロール中に画面全体がめちゃくちゃになり、最初に背景を消去せずに(スクロールすると)ビューが再描画されるように見えます。

設定は XML ファイルで定義されます - 一部のカテゴリと設定が入れ子になっているだけでファンキーなものはありません<PreferenceScreen/>

ビューを明示的に再描画する必要がありますか? それは過剰に思えます - なぜデフォルトでそうならないのでしょうか? これは既存のアプリであるため、v. 1.5 でビルドおよび配布されています。

PS また、この動作はエミュレーターと G1 の 1.1 と 1.5 の両方で発生することにも言及したいと思います。バグとして記録する必要があるようです