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

VB2008で定数に色の設定をしたいです。

このQ&Aのポイント
  • VB2008初心者です。定数に色の設定をしたいのですがなかなか上手く設定出来ません。
  • 変数に設定は出来るのですが、Dim COLOR As System.Drawing.Color = COLOR.Red
  • 定数にした場合エラーになります。Public Const COLOR As System.Drawing.Color = COLOR.AliceBlue

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

  • ベストアンサー
回答No.1

私の環境では 「定数は、class、structure、または array 型ではなく、組み込み型または列挙型でなければなりません。」 とエラーが出ます。 Colorの定義は Public Structure Color です。 AliceBlueはColor構造体に Public Shared ReadOnly Property AliceBlue() As System.Drawing.Color として定義されています。 エラー内容の通り、「元のAliceBlueが定数でない」ので、「定数宣言には利用できません」ということです。 定数とは異なりますが、AliceBlueのように読み取り専用プロパティとして利用すると、定数宣言と似たような事を行えます。 Public ReadOnly Property COLOR() As System.Drawing.Color   Get     Return COLOR.AliceBlue   End Get End Property

locopelli
質問者

お礼

1050YEN様 ご連絡有難うございます。 私の環境でもエラーの内容は 「定数は、class、structure、または array 型ではなく、組み込み型または列挙型でなければなりません。」 でした。 クラスのプロパティを使用する方法も良いですね! 現在、グローバルな変数や定数をモジュールファイルにまとめて記載していますので 出来れば定数に設定したのですが、もう少し粘ってみて無理そうでしたらプロパティでの設定してみようと思います。 VB6の時は出来たので多分出来ないことは無いと思うのですが・・・ .netの利用が始めてなので??な事ばかりです。。 p.s 変数名のご指摘有難うございました!

locopelli
質問者

補足

1050YEN様 ご連絡有難うございます。 私の環境でもエラーの内容は 「定数は、class、structure、または array 型ではなく、組み込み型または列挙型でなければなりません。」 でした。 クラスのプロパティを使用する方法も良いですね! 現在、グローバルな変数や定数をモジュールファイルにまとめて記載していますので 出来れば定数に設定したのですが、もう少し粘ってみて無理そうでしたらプロパティでの設定してみようと思います。 VB6の時は出来たので多分出来ないことは無いと思うのですが・・・ .netの利用が始めてなので??な事ばかりです。。 p.s 変数名のご指摘有難うございました!

その他の回答 (2)

回答No.3

>VB6の時は出来たので多分出来ないことは無いと思うのですが・・・ いいえ、できません。 VB6の色は定数です。 列挙対 VBRUN.ColorConstants 定数 Const vbRed = 255(&HFF) VB6と.NETでは、色の宣言が異なります。 それと.NETの標準モジュールでもPropertyは利用できますよ。

locopelli
質問者

お礼

いいえ、できません。 VB6の色は定数です。 列挙対VBRUN.ColorConstants 定数Const vbRed = 255(&HFF) VB6と.NETでは、色の宣言が異なります... 言葉足らずでスミマセン・・ VB6の時は定数に色の設定を出来たので.Netでもどんな設定方法でも良いので 出来ないかな・・と言う意味でしたm(_)m (型はSystem.Drawing.Colorで無くても) やはり無理ですよね・・ 出来ない!とわかれば諦めも付くので助かりました。 プロパティでの設定をしようと思います! お手数をお掛けしてスミマセンでした。 有難うございました!

回答No.2

Return COLOR.AliceBlue ↓この方がよいかも Return System.Drawing.Color.AliceBlue それ以前に、COLORというネーミングを定数/変数/属性名に行わない方がよいかも? System.Drawing.Colorとかぶる可能性があるから。。。

locopelli
質問者

お礼

すみません。。 初めての質問だったので使い方がまだわからず・・ 下記、同じメッセージをしてしまいました。 有難うございました!!

関連するQ&A