vb6 アプリケーションで msflexgrid を使用していますが、正常に動作しますが、セルに大きなコンテンツがある場合、問題が発生します。問題は、矢印ボタンを使用してグリッド内を移動する場合、大きなコンテンツを含むセルが表示領域に来ると、ナビゲーションが非常に遅くなることです。それ以外の場合は正常に動作します。この場合、グリッドのセル コンテンツを開こうとしているのではなく、あるセルから別のセルに移動するだけです。では、このパフォーマンスの低下やナビゲーションの遅さはどのように解決または改善できるのでしょうか?
質問する
690 次
3 に答える
2
Redraw
プロパティを次のように設定しますfalse
true
アップデート完了後、再度設定してください。
于 2013-07-22T07:05:06.977 に答える
1
次のように、MSFlex グリッド コントロールの Service Pack 6 (最新) バージョンを使用してテスト ハーネスをセットアップします。
Private Sub Form_Load()
Dim i, j As Integer
Dim s As String
For j = 1 To 500
For i = 65 To 122
s = s & Chr(i)
Next i
Next j
For i = 1 To 4
For j = 1 To 10
MSFlexGrid.Col = i
MSFlexGrid.Row = j
MSFlexGrid.Text = s
Next j
Next i
End Sub
私の場合、MSFlex Grid コントロールには 5 列と 50 行がありました。
これにより、セルあたり約 29K (58 文字 * 500 繰り返し) のデータが生成されます。このテスト ハーネスを使用すると、セルからセルへとかなり迅速に移動できます。コントロールの最新 (SP6) バージョンを使用していることを確認することをお勧めします。
SP6 バージョンを使用していて、各セルに表示されているデータの量が非常に多く、依然としてパフォーマンスの問題が発生している場合は、別のコントロールに切り替えることをお勧めします。
サードパーティの VB6 コントロールを統合するか、.NET で作成したものを活用して VB6 フォームに統合する可能性があります。
于 2013-07-26T13:55:18.337 に答える