ProgressBarのパーセント表示

解決


Delphi初心者  2005-12-16 08:19:47  No: 19274

こんばんは、さっそく質問なのですが、TProgressBarでTGaugeのように
ProgressBarの真ん中にパーセント表示で進捗率を表示したいと思い、
ProgressBarの上にLabelを置いてみたのですがLabelがProgressBarの背面に
隠れてしまい、うまく実現することが出来ません。
良い方法はありませんでしょうか?


deldel  2005-12-17 01:02:53  No: 19275

下記のコンポがお勧めです。

http://www.inspired.sk/delphi/components/component.php?ID=27


Delphi初心者  2005-12-18 00:40:00  No: 19276

返信ありがとうございます。

>下記のコンポがお勧めです。
>http://www.inspired.sk/delphi/components/component.php?ID=27
試してみたのですが、どちらかというとTGaugeに近いデザインですね。
私がやりたいのはTProgressBarのデザインでパーセント表示をしたいです。

コンポーネントを使用せずには、実現出来ないのでしょうか?


りおりお  2005-12-18 02:01:41  No: 19277

できないと思いますよ。
TProgressBar は Windows のコモンコントロールですから、標準では%表示するような
スタイル設定はできません。


Delphi初心者  2005-12-18 02:27:35  No: 19278

>LabelがProgressBarの背面に
>隠れてしまい、うまく実現することが出来ません。
なら、StaticTextでもPanelでもつかったら。
いろいろい試しなさい。初心者だったら。


Delphi初心者  2005-12-18 23:19:11  No: 19279

>なら、StaticTextでもPanelでもつかったら。
TProgressBarの前面には表示されるようになったのですが、
Transparent:=Trueにしても背景色が透明になってくれません。
背景色が透明になれば、StaticTextで問題ないのですが。


deldel  2005-12-19 18:25:45  No: 19280

じゃあ、
  Label1.Parent := ProgressBar1;
  Label1.Align := alClient;
  Label1.Transparent := True;
  Label1.Alignment := taCenter;
  Label1.Layout := tlCenter;
で、
  Label1.Caption := IntToStr(ProgressBar1.Position) + '%';
は?


どやさ  2005-12-20 03:19:20  No: 19281

できなきゃ自分で作るのがデルファイスタイル!
そこまで、こだわっているのであれば、
自分でつくればいいんじゃない?
自分で作れなきゃあきらめればよいと思うけどね。


Delphi初心者  2006-01-03 23:48:23  No: 19282

返信が遅くなりすみません。

>じゃあ、
>  Label1.Parent := ProgressBar1;
>  Label1.Align := alClient;
>  Label1.Transparent := True;
>  Label1.Alignment := taCenter;
>  Label1.Layout := tlCenter;
>で、
>  Label1.Caption := IntToStr(ProgressBar1.Position) + '%';
>は?
試してみたのですが、どうもラベルのちらつきが気になるのですが?
ちらつかない方法はありませんか?


ハレ  2006-01-04 02:48:34  No: 19283

ProgressBar1.DoubleBuffered := True;


Delphi初心者  2006-01-04 07:42:52  No: 19284

ハレさんありがとうございます!
おかげで希望通りの動作をすることが出来ました。
本当にありがとうございます。感謝!感謝です!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加