こんばんは、さっそく質問なのですが、TProgressBarでTGaugeのように
ProgressBarの真ん中にパーセント表示で進捗率を表示したいと思い、
ProgressBarの上にLabelを置いてみたのですがLabelがProgressBarの背面に
隠れてしまい、うまく実現することが出来ません。
良い方法はありませんでしょうか?
下記のコンポがお勧めです。
http://www.inspired.sk/delphi/components/component.php?ID=27
返信ありがとうございます。
>下記のコンポがお勧めです。
>http://www.inspired.sk/delphi/components/component.php?ID=27
試してみたのですが、どちらかというとTGaugeに近いデザインですね。
私がやりたいのはTProgressBarのデザインでパーセント表示をしたいです。
コンポーネントを使用せずには、実現出来ないのでしょうか?
できないと思いますよ。
TProgressBar は Windows のコモンコントロールですから、標準では%表示するような
スタイル設定はできません。
>LabelがProgressBarの背面に
>隠れてしまい、うまく実現することが出来ません。
なら、StaticTextでもPanelでもつかったら。
いろいろい試しなさい。初心者だったら。
>なら、StaticTextでもPanelでもつかったら。
TProgressBarの前面には表示されるようになったのですが、
Transparent:=Trueにしても背景色が透明になってくれません。
背景色が透明になれば、StaticTextで問題ないのですが。
じゃあ、
Label1.Parent := ProgressBar1;
Label1.Align := alClient;
Label1.Transparent := True;
Label1.Alignment := taCenter;
Label1.Layout := tlCenter;
で、
Label1.Caption := IntToStr(ProgressBar1.Position) + '%';
は?
できなきゃ自分で作るのがデルファイスタイル!
そこまで、こだわっているのであれば、
自分でつくればいいんじゃない?
自分で作れなきゃあきらめればよいと思うけどね。
返信が遅くなりすみません。
>じゃあ、
> Label1.Parent := ProgressBar1;
> Label1.Align := alClient;
> Label1.Transparent := True;
> Label1.Alignment := taCenter;
> Label1.Layout := tlCenter;
>で、
> Label1.Caption := IntToStr(ProgressBar1.Position) + '%';
>は?
試してみたのですが、どうもラベルのちらつきが気になるのですが?
ちらつかない方法はありませんか?
ProgressBar1.DoubleBuffered := True;
ハレさんありがとうございます!
おかげで希望通りの動作をすることが出来ました。
本当にありがとうございます。感謝!感謝です!
ツイート | ![]() |