• ベストアンサー

VB6の列挙型(Enum)について

VB6の列挙型について教えてください。 変数や定数は大文字で表示されているところを小文字に変更しても大文字に戻してくれるのですが、列挙型はそのまま変更されてしまいます。列挙型でも変更されないように出来ますでしょうか? よろしくお願いします。

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

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

>列挙型でも変更されないように出来ますでしょうか? 無理だと思います。

noname#63886
質問者

お礼

やはり出来ませんか、ありがとうございました。

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

関連するQ&A

  • 列挙

    VBAの勉強をしていて、 定数と変数の違いは分かったのですが 列挙の意味がいまいちわかりません。 どういう意味でしょうか? また 列挙と定数・変数は関連付いてますか?

  • VB6 ClassにてEnum(列挙型)のうまい使い方

    へっぽこPGです。 今まで私の質問にご回答を頂いた方々、改めてお礼申し上げます。 最近VB6でActiveXDLLにて、DLLを作り始めました。 Classについて勉強を始めたばかりで、 実現できそうな機能と実現できない力量のギャップに苦労しています。 さて、いろいろと便利なDLLを作ってやるぞ!と意気込み、 ExeからDLLを参照してプロパティに値を設定する時に、 インテリセンスが出るようにしたく、ClassにEnum(列挙型)を使うやり方を見つけましたが・・・・。 その先困ってます。 VB6でデバッグをしているわけですが、 Class(Dll)とExeは別プロジェクトで生成しており、 Dllはバイナリ変換、デバッグはExeを実行するように設定済です。 これでActiveXDLLプロジェクトで「開始」をすると、Exeを実行してくれます。 Exeのプロジェクトから、 「開始」・ステップ実行して確認しましたが、 正常に動作しているようです。(記述した文がそれぞれ機能しているという意味で) ActiveXDLLプロジェクトから、 「開始」後、「停止」をして、Dllを上書きしようとすると、 「書込みできません。"~DllのPath~"」とMsgboxのBouttonのでいうvbMsgBoxStyle=vbCriticalの形式で、 Msgboxが表示されてしまいます。 どうやらExeがDLLを離していないのでしょうか? もちろん列挙型を設定していないDLLの場合ですと、上書きは可能です。 (他にも上書きできないパターンを見つけましたが、話が脱線するので割愛します。もしご存知でしたら、併せて教えて頂くと幸いです。) 困っている点としては、 1 デバッグする上で、Dll(書出)⇔Exe(開始)を繰り返したく、都度プロジェクトを閉じて、開いてDLL書出しするのは、非効率。 (DLLを書き出して、インターフェースを変えてしまえば、Exeはリコンパイルが必要なので、あんまり意味ないかも・・・とも) 2 読み取り専用プロパティを作って、Initializeで初期値を設定してしまう方法を考えたが、非常にかっこ悪いし、運用が大変。 3 1を我慢したとしても、作成したDLLはCOM+に登録して、WebサーバでASPから使用するつもりなので、DLLを離してくれないと、無駄なプロセス動き続けてしまう(?)→未テスト です。 いろいろとツッコミどころがあるかもしれませんが、 忌憚なくご意見下さい。 ---Class-(test_Class)---- '列挙宣言 Public Enum Chiiki Hokkaidou = 0 Aomori = 1 Akita = 2 End Enum 'プロパティ値を格納しておく変数 dim aaa as integer 'プロパティでEnum宣言した型を引数に指定します、 Public Property Get Shusshin() As Chiiki Shusshin = aaa End Property Public Property Let WindowState(ByVal NewValue As Chiki) aaa = NewValue End Property ---Class-End-------------------- ---Exe----------------- 'Classは参照設定にて '参照設定にしている理由としては、インテリセンスでロパティ・メソッド等を利用したいから。開発側の怠慢? Sub a 'Class宣言 Dim a_class as test_Class Set a_class = New test_Class 'プロパティ設定 ↓ = と打つと、Classの列挙で設定した値がプルダウン a_class.WindowState = Aomori 'プロパティ値表示(処理自体に意味無し) '「1」 と表示される Msgbox a_class.WindowState 'Class開放 Set a_class = nothing End sub ---Exe-End----

  • VB2008 同じ文字型変数を列挙するには

    VB2008 同じ文字型変数を列挙するには よろしくお願いします。 例えば dim i as integer として、 その後も式を作るのに i+i としようが i*5 でも i*iやi^1でも 自由に書けますよね。 でも dim s as stringer(例えば="○"と続けて、) とした場合、 s+s→○○ はできますが、 s*2→○○はできませんよね? でも、○○○○○○ とか同じ文字を羅列することってありますよね。 それが複数行続き、かつ、文字数が各行違う場合、 各行ごとにfor文を書くんでしょうか(←そもそもこれが合っているかも分かりませんが) 正直申し上げて、わたしが欲しいのは label1.text=s*5 に相当するような公式なのですが… よろしくお願いします。

  • C語でenumの使い方

    http://www9.plala.or.jp/sgwr-t/c/sec16.html の下部に enum week { SUN, MON, TUE, WED, THU, FRI, SAT }; int main(void) { enum week w;   /* ⇒列挙型 week で変数 w を宣言 */ w = MON; /* ⇒変数 w に列挙定数 MON を代入 */ と書かれています。 列挙型 week で変数 w を宣言するのはどういうときに メリットがありますか? 普通にunsigned char w と何が違うのでしょうか?

  • VB初心者の私に教えてください!

    最近VBを始めたんですけど、関数 定数 変数 引数 の意味がよく理解できません・・・。値を返すとか戻り値とか、あとプロシージャを作るってどういうことですか?なにかにたとえて教えてくれればうれしいです! お願いします(^。^)

  • EnumとType

    VB初心者です。 EnumやTypeについてよくわかりません。 何に使用するのでしょうか? また両者の違いについてもよくわかりません。 どなたかご教授ください。 ちなみにEnumは構造体でTypeは列挙型という認識はあっていますか?

  • C言語におけるenum型

    enum word{apple banana orange}; enum word w; と定義します。 scanfなどでキーボード入力から"apple"などを入力したとします。 この入力文字を変数wに格納(列挙型 で定義されている整数値を格納)するには どのようにしたらいいですか?

  • enum列挙子に使える文字列と使えない文字列

    enum Ok{A,A,月1,月1,_,?} enum Ng{1月,1月,→,!,☆} public class Main{public static void main(String[] args){ System.out.println("あああああ"); }}//終わり このJavaプログラムはエラーになります。何故ですか? 要するに、enumに使える列挙子の法則性に興味があります。「?」は通って「!」はエラーって、コンパイルを試みた後に結果を知ると、色々とムカつきます。 「!」は通って「?」はエラーだと嘘が書物に書いてあると、騙されます。 enumで使える列挙子(要素)のタイプが載ってるサイト、enumの列挙子に使うとエラーになってしまう例が載ってるサイトなどを紹介してくれるとありがたいです。 どんな文字列でもenumに使えて、何でもOKなら親切だと思うのに・・・

    • ベストアンサー
    • Java
  • VB6のLSETをVB2005で実現するには?

    VB6の下記ソースをVB2005のアップグレードツールで変換したらエラーになってしまいました。VB2005ではサポートされてないみたいで、どのように変更したらよいか途方にくれております。 どなたかご教授下さい。よろしくお願い致します。 --ソース抜粋-- A:構造体変数 B:構造体変数 VB6: LSET A = B VB2005: ?????

  • 整数の引数に列挙を使ったとき

     下記のサンプルコードでVB2003のときは警告が出なかったのですが、VB2008では警告が出ます。(注!インデントに全角スペース使用) Private aryNames(5) As String Private Enum enmItem As Integer  eName1 = 0  eName2  eName3 End Enum Private Sub Form1_Load(…  Dim i As Integer  Dim en As enmItem  '列挙を使って代入する  Item(en.eName2) = "DATA2"  Item(en.eName3) = "DATA3"  Item(en.eName1) = "DATA1"  'リストボックスで確認  For i = 0 To 2   ListBox1.Items.Add(aryNames(i))  Next End Sub Private Property Item(ByVal idx As Integer) As String  Get   Return aryNames(idx)  End Get  Set(ByVal Value As String)   aryNames(idx) = Value  End Set End Property 警告 使用されないローカル変数'en'です。 インスタンスを経由する共有メンバ、定数メンバ、列挙型メンバ、または入れ子にされた型へのアクセスです。正規の式は評価されません。  いちおう警告だけで期待通りの動きはするのですが、そんなに不正なコーディングでもないのに警告がでるのはうっとうしいです。  かといて警告オプション・・・  未使用のローカル変数 なし  共有メンバにアクセスするインスタンス変数 なし ・・・とするのも何だかなあ~ て感じです。  これは、安全なコーディングのため仕様が変わったせいなのでしょうか。 警告オプションをそのままに、上記の警告が出ないようにできないものでしょうか。 以上、よろしくお願いします。