アプリ版:「スタンプのみでお礼する」機能のリリースについて

VisualStudio2008のWindowsフォームアプリケーションでプログレスバーを配置し、プログレスバーの色を変更したいのですが、ForeColorに設定しても色が変わりません。
Windowsの背景のテーマはクラシックにせず、背景色を変える方法をご存知の方、ご教授お願いします。

A 回答 (2件)

 こんにちは。


 取り敢えず、以下で実験すれば変色すると思います。

progressBar1->ForeColor = System::Drawing::Color::FromArgb(255, 192, 224, 160);//インジケータの色
progressBar1->BackColor = System::Drawing::Color::FromArgb(255, 24, 64, 32);//背景の色
progressBar1->Minimum = 1;
progressBar1->Maximum = 3;
progressBar1->Value = 1;
progressBar1->Step = 1;
progressBar1->PerformStep();
「プログレスバーの色変更について」の回答画像1
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
OSは、WinXPです。
progressBar1->BackColor = System::Drawing::Color::FromArgb(214, 231, 255);
progressBar1->ForeColor = System::Drawing::Color::FromArgb(0, 85, 230);
のように記述したところ、やはり変わりませんでした。
Windowsの画面のプロパティのテーマを[Windows クラシック]にすると色変更が可能になるのですが、[Windows XP]にすると変わりませんでした。

お礼日時:2009/01/28 11:04

 こんにちは。

御礼頂きました。

 ああ、もしかしたら、winXPの問題なのかもしれません。
 当方はwin2000/sp4でvc2005の方で行っています。

 一点だけ確認させて頂くと、拝見する限り、アルファ値の設定が抜けている様に見えます。

 progressBar1->BackColor = System::Drawing::Color::FromArgb(214, 231, 255);
 progressBar1->ForeColor = System::Drawing::Color::FromArgb(0, 85, 230);

 ではなく、

 progressBar1->BackColor = System::Drawing::Color::FromArgb(255, 214, 231, 255);
 progressBar1->ForeColor = System::Drawing::Color::FromArgb(255, 0, 85, 230);

 一番左のパラメータに255を追加してトライして見ては如何でしょうか。
 このアルファ値は、下地の色彩との調合度を意味します。0だと何も着色されません。255でフルに着色されます。
 此れで無理であれば、私はギブアップと言う事になります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
回答して頂いたようにコードを修正してみましたが、色変更ができませんでした。2度も回答して頂きありがとうございました。

お礼日時:2009/01/28 18:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A