• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:色を定数にしたいのですが)

VB2005での画面コントロールのバックカラー変更方法

このQ&Aのポイント
  • VB2005で画面のコントロールのバックカラーを変更する方法を教えてください。
  • VB6.0では定数に色を設定し、TextBox1.BackColor = CLR_YELLOWのように色を設定していましたが、VB2005ではColor.FromArgbを使用するようになりました。
  • 現在はColor.FromArgb(255, 255, 192)のように直接色を指定していますが、定数に設定する方法はありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • miyuyu
  • ベストアンサー率61% (30/49)
回答No.1

例えば Private color255_255_192 As System.Drawing.Color = System.Drawing.Color.FromArgb(255, 255, 192)

tenko_am
質問者

お礼

ありがとうございます。 これですっきりさせることができました。 vb6から変わったばかりで、どうも宣言の部分とかが良くわかっていません。 本と首っ引きでやっているのですが、なかなか・・・ またよろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VB2008で定数に色の設定をしたいです。(初心者)

    VB2008で定数に色の設定をしたいです。(初心者) VB2008初心者です。 定数に色の設定をしたいのですがなかなか上手く設定出来ません。 変数に設定は出来るのですが、 Dim COLOR As System.Drawing.Color = COLOR.Red 定数にした場合エラーになります。 Public Const COLOR As System.Drawing.Color = COLOR.AliceBlue 色々他も試してみたのですが・・初歩的な質問で申し訳ありません。 設定は「System.Drawing.Color」でなくても良いのですが、 どなかたかご教授頂きたく宜しくお願い致します。

  • vb初心者。急いでます!

    修論に取り組む院生です。 vb2010で簡単なソフトを作成中なのですが、以下のようなコードが何度も出てくるため、なんとか短くしたいんです。 型変換や色指定部分の工夫などが考えられると思うのですが、なかなか上手くいかず焦っています。 Dim a213,a214,c212,c213,c214 As Double If a213 < 1 Then ha13.BackColor = Color.FromArgb(160, 140, 255) ElseIf a213 < 20 Then ha13.BackColor = Color.FromArgb(120, 160, 255) ElseIf a213 < 40 Then ha13.BackColor = Color.FromArgb(100, 200, 150) ElseIf a213 < 60 Then ha13.BackColor = Color.FromArgb(255, 255, 70) ElseIf a213 < 80 Then ha13.BackColor = Color.FromArgb(255, 170, 0) Else ha13.BackColor = Color.FromArgb(255, 80, 100) End If If a214 < 1 Then ha14.BackColor = Color.FromArgb(160, 140, 255) ElseIf a214 < 20 Then ha13.BackColor = Color.FromArgb(120, 160, 255) ElseIf a214 < 40 Then ha14.BackColor = Color.FromArgb(100, 200, 150) ElseIf a214 < 60 Then ha14.BackColor = Color.FromArgb(255, 255, 70) ElseIf a214 < 80 Then ha14.BackColor = Color.FromArgb(255, 170, 0) Else ha14.BackColor = Color.FromArgb(255, 80, 100) End If If c212 < 1 Then hc12.BackColor = Color.FromArgb(160, 140, 255) ElseIf c212 < 20 Then hc12.BackColor = Color.FromArgb(120, 160, 255) ElseIf c212 < 40 Then hc12.BackColor = Color.FromArgb(100, 200, 150) ElseIf c212 < 60 Then hc12.BackColor = Color.FromArgb(255, 255, 70) ElseIf c212 < 80 Then hc12.BackColor = Color.FromArgb(255, 170, 0) Else hc12.BackColor = Color.FromArgb(255, 80, 100) End If If c213 < 1 Then hc13.BackColor = Color.FromArgb(160, 140, 255) ElseIf c213 < 20 Then hc13.BackColor = Color.FromArgb(120, 160, 255) ElseIf c213 < 40 Then hc13.BackColor = Color.FromArgb(100, 200, 150) ElseIf c213 < 60 Then hc13.BackColor = Color.FromArgb(255, 255, 70) ElseIf c213 < 80 Then hc13.BackColor = Color.FromArgb(255, 170, 0) Else hc13.BackColor = Color.FromArgb(255, 80, 100) End If If c214 < 1 Then hc14.BackColor = Color.FromArgb(160, 140, 255) ElseIf c214 < 20 Then hc14.BackColor = Color.FromArgb(120, 160, 255) ElseIf c214 < 40 Then hc14.BackColor = Color.FromArgb(100, 200, 150) ElseIf c214 < 60 Then hc14.BackColor = Color.FromArgb(255, 255, 70) ElseIf c214 < 80 Then hc14.BackColor = Color.FromArgb(255, 170, 0) Else hc14.BackColor = Color.FromArgb(255, 80, 100) End If 初めにhが付くものはpicturebox名です。 条件に応じてpictureboxの色を変えるコードで、色は全部で6色で固定です。 このあたりももっと工夫できる気がしてはいるのですが・・・ 時間がないので、とりあえずは期限までに面倒な手順でもソフトを完成させようと思っていますが、さすがに量が多いのでこちらも時間的に危ういです。。 いいアイディアをお持ちの方、よろしくお願いします!!!

  • textboxの背景色を10進数から設定

    VB.NETで10進数「16711680(&HFFFF)」(R:255,G:255,B:0)の数字からテキストボックスの背景色に設定するにはどうしたらよいのでしょうか? textbox.backcolor=color.argb(&h00ffff) とすると 「このコントロールは透明な背景色をサポートしません。」 というエラーが出ます。

  • VB 2005 色データの保存、読出し、設定

    VB6では、色の設定を Button.Backcolor = &HC000& とコードに記述していれば、Buttonの色が変更されていたのですが(&HC000& をファイルに保存していれば、読み出して設定もできていましたが)、VB2005で同じようにするとエラーがでてしまいます。Button.Backcolor = Color.Redとすればいいのですが、色データを保存したり、読み出したりして設定したいのですが、どうすれば良いのか分かりません。どなたか知っていれば教えて頂きたいのですが。よろしくお願いします。

  • C#で背景色の設定 (0xFFC0DBなど)

    データベースに登録されている値(0xFFC0DB)を使って、 テキストボックスの背景色を設定したいと思っています。 = Color.Pink; = Color.FromArgb(0xFF, 0xC0, 0xCB); などは出来るのですが、0xFFC0DBをそのまま(?)使った方法が分かりません... ご存じの方がいらっしゃいましたら、教えていただけないでしょうか? ---- int test; testColor = データベースの値; TextBox.BackColor = testColor;

  • 定数の設定について。

    こんにちは!WIN2000、VB6、SP5で開発しています。 仕事で今プログラミングしてるのですが、定数で困ってます。 悩んでるのは、 定数を宣言する標準モジュールがあって、 そこの定数にINIファイルから読み込んだ値を代入して、 どこからでも読み込めるようにする。 というところなのです。 Public Const gstrMoji = "文字列" このように宣言すると分かったのですが、 例えば下のように、INIファイルから読み込んで文字列を入れようとすると、 Public Const gstrMoji = iniFileLoad("テスト", "答え") iniFileLoadのところで、定数式が必要です。とエラーになってしまいます。 ちなみに、iniFileLoadっていうのは、別のモジュールに書いた関数式?を呼んでます。 登録や編集してるフォームではちゃんと動いてるので、 コード自体に問題があるわけじゃないと思ってます。 ためしに、フォームロードとかで定数を宣言してやろうとしたら、 ここでは宣言出来ません。みたいになって、どうしていいか困ってしまいました。 INIファイルから読み込んだデータを定数に代入する方法、 ご存知の方いらっしゃいましたら、どうぞご教授よろしくお願いしますm(_ _)m

  • EXCEL VBAのユーザーフォームの配色について

    EXCEL VBAのユーザーフォームの配色の変更について教えていただきたいことがあります。 ユーザーフォームを設置しているのですが、プロパティで設定されている「システム」及び「パレット」の各色をVBAコードで表示することは出来るのでしょうか。 プロパティでUserForm1のBackColorを「強調表示」に設定 TextBox1の値を変えたときにTextBox1のBackColorを「強調表示」に変更する。 Private Sub TextBox1_Change() TextBox1.BackColor = RGB(255, 255, 150) End Sub でやろうとしていますが、全く同じ色を作ることができません。 システムやパレットの色をRGB以外のやり方で設定することはできるのでしょうか。 よろしくお願いいたします。

  • TextBoxに入力したカラーコード

    チェックボックスをクリックするとカラーパレットが出てきて色を選び「OK」を押すとテキストボックスの背景の色を変えてカラーコードを表示させるコードが下なんですが private void checkBox1_CheckedChanged(object sender, EventArgs e) {     ColorDialog colorDialog1 = new ColorDialog(); if (colorDialog1.ShowDialog() == DialogResult.OK) { Color ColorCode = colorDialog1.Color; textBox1.BackColor = ColorCode; textBox1.ForeColor = Color.FromArgb(0xFF - ColorCode.R, 0xFF - ColorCode.G,                                 0xFF - ColorCode.B); string strColor = "#" + ColorCode.R.ToString("X2") + // Red(赤) を16進数2桁表示 ColorCode.G.ToString("X2") + // Green(緑)を16進数2桁表示 ColorCode.B.ToString("X2"); // Blue(青) を16進数2桁表示 textBox1.Text = strColor; } } private Brush b5 = new SolidBrush(Color.ColorCode); とした場合「ColorCode」の定義がありませんと出ます。上のプログラムで選んだカラーコードをどうやれば(Color.ColorCode)に入れることができるのでしょうか? ご教授お願いします。

  • VBからExcel操作について

    VB2008を使用しています。 Excelのシート内でセルA1に何らかの文字が入っている場合にVB2008上のTextBoxの背景色を変える場合に以下のコードを使用しています。 Select Case tuki.Range("A1").Value Case Is <> "" TextBox1.BackColor = Color.Maroon End Select ここで質問なのですが、A1とA2の両方に何らかの文字が入っている場合にTextBoxの背景色を変えるにはどうすれば良いか教えて下さい。 Select Case tuki.Range("A1:A2").Value Case Is <> "" TextBox1.BackColor = Color.Pink End Select 上記の方法ですと「これらの引数で呼び出される、パブリック '=' がないため、オーバーロードの解決に失敗しました: 'Public Shared Operator =(a As String, b As String) As Boolean': パラメータ 'a' に対応する引数は、'Object(,)' から 'String' へ変換できません。」とエラーメッセージが表示されてしまいました。メッセージの意味も理解出来ず困っています。よろしくお願いいたします。

  • 数が多い定数をスマートに処理するには?お知恵をお貸しください。

    Visual Basic(VB)6.0 です。フォームのTextなど各種入力の状態をチェックして、 不正なら該当する(ユーザ向けの)エラーメッセージを フォームのLabelに表示する処理を書いています。 エラーメッセージは20~30程度になり、全て定数Const文で持たせました。 随時発生する入力チェックの処理の度に、エラーならLabelのCaptionの表示を 変える処理を書くのはスマートではないと思ったので、 Label表示変更専用のモジュールを作ろうと考えました。 引数に(ユーザ定義の)コードを渡して、対応する定数のエラーメッセージを 判定・表示させる処理を書こうと思ったのですが、ここでうまくいきません。 以下、簡単なコードです。 ------------------------------------------------------ '* 定数です * Public Const ERR1 = "エラー1です" Public Const ERR2 = "エラー2です" Public Const ERR1 = "エラー3です" Public Const ERR2 = "エラー4です" '-----中略----- Public Const ERR50 = "エラー30です" ------------------------------------------------------- '** メイン処理です。** Sub main() Dim i As Integer 'フォームの入力をチェックします i = Chk_Value(dummy) If i > 0 Then '0より大きかったらエラーコードとして引数を渡します Call Disp_Msg(i) Exit Sub End If End Sub ------------------------------------------------------- '入力チェック処理です Private Function Chk_Value(ByVal dummy As Integer) As Integer '空白だったらエラーなので1を返します If Text1.Text = "" Then Chk_Value = 1 End If End Function ------------------------------------------------------- 'メッセージ表示処理です Private Sub Disp_Msg(ByVal ecd As Integer) '分からない! '引数で1を受け取り、定数のERR1を表示したい '引数で2を受け取ったら、定数のERR2を表示したい End Sub ------------------------------------------------------- 列挙型やType型変数もよい使い方が思いつかず、 ループで回して配列に格納しようにも、変数と変数を組み合わせて 変数を作る(wErr = "ERR" & i と書いても定数ERR1を表せない) のも無理なようだし、ほとほと困り果てています。 拙い説明で恐縮ですが、私の考えを実装することは可能でしょうか。 または別の方法はあるでしょうか。 よろしくお願いします。