メモ帳のようなアプリケーションを作成しました。1MBのファイルをテキストボックスにロードすると、約1分かかります。Visual Studio Binaryエディターは、行、16進、およびASCIIバージョンをほんの一瞬で表示します。どうすればデータをテキストボックスにすばやく取り込むことができますか?ありがとう
2 に答える
9
画面に表示できるものを表示するのに十分な量のファイルを読み取るだけです。つまり、UIが一度に100バイトしか表示できない場合、画面全体に表示するには100バイトを読み取るだけで済みます。ユーザーがウィンドウをスクロールした場合、不足している部分を埋めるために追加のバイトを読み取る必要があります。
于 2010-04-25T14:06:21.340 に答える
0
失礼なことを言うつもりはありません。助けて明確にすることを願っています:あなたは返信の中で、読書は問題ではなく、win32の男が問題であると述べました。しかし、私はそれを本当に疑っています。
まず第一に、ディスクアクセスはGUI関連のものと比較して途方もなく遅いです。非常に大量のテキストを含むように編集ボックスを設定した場合でも、基本的にはmemcpyと再描画だけです。
少し処理が必要です。改行を見つけるには、文字列をウォークスルーする必要があります。また、ワードラップを使用している場合は、許可されている幅を超えるまで、次の文字の幅を追加し続ける必要があります。しかし、どちらもディスクからの読み取りに比べてかなり高速です。
それで、あなたは本当に、それがGUIの速度の問題であり、読書の問題ではないことを本当に確信していますか?両方の時間を提供できますか?ここでGUIが問題であるとは信じがたいです...
于 2010-05-05T07:59:43.923 に答える