掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ランタイムテーマ有効時のプログレスバー処理が遅い (ID:45571)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
同じVista+Delphi2007で試してみました。 どうやらランタイムテーマが有効だと描画に時間がかかるようです。 しかも非同期で描画されているようです。 procedure TForm1.Button1Click(Sender: TObject); var I : Integer; st: cardinal; cnt: integer; begin ProgressBar1.Position := 0; st := GetTickCount; cnt := 0; for I := 1 to 100000 do begin if cnt < Trunc(I / 100000 * 100) then begin cnt := Trunc(I / 100000 * 100); ProgressBar1.Position := cnt; end; end; Caption := IntToStr(GetTickCount - st); end; このようにすると、私のPCではキャプションに18とか0とか表示されますが キャプションに数値が表示された後にもプログレスバーが動き続けます。 最初の例だとプログレスバーの更新が10万回実行されますが これを必要最小限にすれば回避できると思います。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.