• 締切済み

VB2005 継承元のResourcesが継承先で読み込めない

開発環境 VB2005 フォームの継承を行っていて、 継承元の方のフォームにボタンがあり、 My.Resourcesにてリソースファイルから取り出した文字列を メッセージボックスで表示します。 継承先の方のフォームにて継承したボタンを押した時に、 My.Resourcesにて文字列を取り出そうとしたところ、 My.Resources自体が認識せず、エラーになってしまいます。 継承元のリソースファイルから、 継承先では取得できないのでしょうか? よろしくお願い致します。

みんなの回答

  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.1

継承元、継承先のFormが保管されているプロジェクトは同一Project でしょうか? また、リソースの定義は、My ProjectにあるResources.resx に 行っているんでしょうか?

関連するQ&A

  • vb2022 Resourcesの中のエクセルの扱

    vb2022 Resourcesの中のエクセルの扱い方を教えて下さい サンプルに貰ったvb(フォームアプリケーション)のソースには Resourcesの中にエクセルファイル(エクセル1.xlsx)があります。 そのエクセルをプログラム内でコピーして、一部のセルの値を書き換えて出力しています。 Dim strFileName As String = "c:\出力するエクセル.xlsx" My.Computer.FileSystem.WriteAllBytes(strFileName, My.Resources.エクセル1, False) 同じことをしたいのですが、Resourcesのエクセルの扱い方がわかりません。 まず、あらかじめ用意した『エクセル1.xlsx』をResourcesの中に置く方法がわかりません。 エクスプローラを開き 場所、プロジェクト名のフォルダResourcesフォルダとたどり、Resourcesフォルダの中に『エクセル1.xlsx』を置きました。 置いただけではVBのエディタ(ソリューションエクスプローラ)からは見えません。 ソリューションエクスプローラのResourcesで右クリックし、追加、既存の項目、で、今置いた場所(Resourcesフォルダの中の『エクセル1.xlsx』)を選ぶと ソリューションエクスプローラのResourcesの下に姿を現しました。 ここまでのやり方があってるのか分かりません。 次に コードを書くところ(ボタン押下とか)で Dim strFileName As String = "c:\出力するエクセル.xlsx" My.Computer.FileSystem.WriteAllBytes(strFileName, My.Resources.エクセル1, False) を書くと My.Resources.エクセル1 の部分がエラーになります。 サンプルに貰ったvbでは、 『My.Resources.』まで手で打つと候補に『エクセル1』などが挙がってきますが 一から作った分は候補が出てきませんし、エラーになります。 どこかで、 (略)\Resources\エクセル1.xlsx と My.Resources.エクセル1 の紐づけが必要なのだと思いますが、どこで何をすればいいのか分かりません。

  • 継承元と継承先での変数

    VB.NETで継承の勉強中です。 継承元と継承先で同じ意味合いの変数を使おうと思っています。 例えば、  ・継承元でkyuuyo(給与)をintegerで宣言  ・継承先Aで社員の給与を計算、継承先Bでアルバイトの給与を計算する   (残業やら手当やらの計算が必要)  ・継承元で、kyuuyoの支払処理をする この場合、継承先で宣言した変数で計算処理をしてから、 継承元のkyuuyoに代入したほうが良いのかなと思ったのですが その場合の変数名をどう付けるかで迷っています。 1.同じ名前を付けて、MyBase.kyuuyoとMe.kyuuyoで使い分ける 2.継承先の方を、tmpKyuuyoとする 3.motoKyuuyo、sakiKyuuyoみたいにする 4.そもそも、継承先で変数を宣言する必要が無い   (MyBase.kyuuyoで計算処理をしていく) 5.その他   (設計自体がおかしい) うちの会社はプログラムとかとは縁遠いので、規約みたいなものはありません。 私も他の仕事の傍らでやっている程度ですし、私以外にプログラム等を している人はいません。 今はどうやっても問題は無いのですが、私が辞めた後などの事を考えると 出来るだけ分かりやすくしておいた方が良いと思っているのですが どんな感じで実装するのが、VB.NET(oop)っぽいのか教えてください。 よろしくお願いします。

  • VB 継承した時に表示されるマークは何

    継承した時に表示されるマークは何 こんにちは。 VBでフォームの継承をおこないました。 その結果、URLの「4 継承されたフォーム」画像のように、各コントロールに(ボタン、テキストボックス、ラベルなど)矢印がピヨっと出ているアイコンが出てきました。 これはどういった意味になるのでしょうか?このコントロールは他フォームから継承されていますという意味で矢印のアイコンが表示されているのでしょうか? http://blog.livedoor.jp/xbrg_mochi/archives/51648292.html

  • VB.NETのリソース内のEXCELを開く方法

    環境  WindowsXpPro VB2008EE Excel2007 VB.NETのリソースに登録したExcelファイルをプログラム中から開く(呼び出す)コードを探しているのですが、なかなか見当たりません。 MSDNも探しましたが、探し方が悪いのか見つかりません。 My.Resources.ResourceManager.GetObjectなどを使うのでしょうか? いずれにせようまくいきません。 御存じのかたがいらっしゃいましたらぜひ教えてください。 よろしくお願いいたします。

  • 抽象クラスの継承について

    すいませんがご教授下さい。 ASP.NETとVB.NETを使用してアプリを開発しています。 存在するクラスは以下のようなクラスです。 (WebForm1.aspxとWebForm1.aspx.vbとClass1.vb(抽象クラス)があります。) したい事はClass1.vbをWebForm1.aspx.vbが継承したいのですが継承させた後にWebForm1.aspxを開こうとすると「Webフォームデザイナにファイルを読み込めませんでした。・・・・」とエラーポップアップが表示されます。「はい」でHTMLは見れるのですがデザインはタブ自体がないです。普通のクラスを継承させると問題ないのですが。抽象クラスだとエラーになります。 対処方を教えて下さい。

  • [VB2005]リソースのアドレス指定?

    ”My.Resources.TEST_DATA”というテキストデータの保存先を 取得する方法がわかりません。 strFileName = My.Resources(こっからどうするのか分らない) strFileName = "C:\どっかにあるTEST_DATA" 例の表現が自分でもよくわからなくなってしまいましたが、 申し訳ないです。 もうひとつ、そのリソースのファイル名も知る方法があれば教えてください。

  • vb.netの問題で悩んでいます。

    vb.netで、このような問題が出て苦戦しています。 次のようなフォームを作成してください。 データAのテキストボックスには、文字列を、データBには回数を入れ、表示ボタンを押したときに文字列を回数分つないだものがメッセージボックスに表示される。(AにxyzでBに3ならばxyzxyzxyzと表示される) フォームは作成できました。肝心のプログラムが全然書けません。片方はstring 片方はintegerというくらいしか。。教えてください。

  • リソースファイルの選択

    VB2010で、以下のような書き方でリソースファイルの選択を行っているのですが、 リソースファイルを増やすたびにコードを書き足さなければならず非効率的です。 リソースが10個・20個と増えてくるとその分だけコードが長くなります。 ほかに方法はあるのでしょうか? なお、今はVB2010が入っていないパソコンから投稿しているので コードを思い出しながら書いています。 たぶん大丈夫だと思いますが、もしかしたらエラーが発生するかもしれません。 Private ResourceID As Integer (中略) Dim bmp As Bitmap Select Case ResourceID Case 1 : bmp = My.Resources.picture1 Case 2 : bmp = My.Resources.picture2 Case 3 : bmp = My.Resources.picture3 End Select Select Case ResourceID Case 1 : TextBox1.Text = My.Resources.text1 Case 2 : TextBox1.Text = My.Resources.text2 Case 3 : TextBox1.Text = My.Resources.text3 End Select

  • 【.NET】Rexourcesのファイル名をStringや変数で指定..

     こんばんは.いつも勉強させていただいております. 質問させていただきます.どうぞよろしくお願いいたします.  VB2008でコントロールの画像をResourcesの中のファイルから呼び出して切り替えております. ただコントロールの数が非常に多く, Button_1.BackgroundImage = My.Resources.Button_1 Button_2.BackgroundImage = My.Resources.Button_2      :           :      :           : と毎回書くのが手間なので, For Each コントロール In GroupBox_1.Controls  コントロール.BackgroundImage = My.Resources.・・・(コントロール.Name)    '↑適当です..^^; Next のように,ボタン名の文字列(String)から画像ファイルを指定したいのですが, うまくいきません...  フルパス指定でしたら””で囲まれた文字列なので コントロール.BackgroundImage = Image.FromFile(Path & コントロール.Name & ".JPG") のようにできると思うのですが,これだとビルドしたExeファイルを 他のPCで実行すると「ファイルが見つかりません」みたいなエラーが 出るので使えません....  もしお詳しい方がいらっしゃいましたら,是非ともアドバイスを いただきたくお願い申し上げます.  どうぞよろしくお願いいたします.

  • VB2008での配列の初期化方法

    VB2008での配列の初期化方法 様々なサイトなどを見て、配列を宣言する時に初期化する方法を知ってこんな風なコードを書いて、配列の初期化を試みました。 書いたコード Option Strict On Public Class Form1() Private AImage As Image = (My.Resources.AImage1 As Image, My.Resources.AImage2 As Image,My.Resources.AImage3 As Image,My.Resources.AImage4 As Image, My.Resources.AImage5 As Image,My.Resources.AImage6 As Image, My.Resources.AImage7 As Image) 後略 もちろんAImage1~7はリソースで読み込んでありますし、End Classもずっと下の方に書いてあります。 ここで、「・・・(My.Resources.AImage1 As Image,・・・」のAsの部分にだけ波線が引かれて、「')' が必要です。」というエラーが出ました。 最後を「)」で終わっているのに、なぜこのエラーが出るのでしょうか。使用言語はVitualBasic2008です。文法等も含めて、改善点を教えていただければ幸いです。