DOBON.NET DOBON.NETプログラミング掲示板過去ログ

共通変数?の操作のしかた

環境/言語:[VB.NET]
分類:[.NET]

教えてください。

Form1でForm2に宣言した変数を操作したいのですができますか?
できるのであれば方法を教えてください。
Form2で
Dim ii As Integer  と宣言しているiiに

Form1で[ii = 1]したいだけなのですが…
この宣言のしかたもだめですか??
2004/02/18(Wed) 21:37:16 編集(投稿者)

おすすめではないですが

Public ii As Integer

とすればできるかと。

以下のページを参照してください。
http://dobon.net/vb/dotnet/form/accessanotherformdata.html
■No2565に返信(hiroさんの記事)
> 教えてください。
>
> Form1でForm2に宣言した変数を操作したいのですができますか?
> できるのであれば方法を教えてください。
> Form2で
> Dim ii As Integer  と宣言しているiiに
>
> Form1で[ii = 1]したいだけなのですが…
> この宣言のしかたもだめですか??
>

Form1でForm2で共通に使用したいのでしたら、
共通変数として宣言すれば良いんじゃないでしょうか?

もしくは、単にForm1からForm2を起動するときに、
変数の値を渡したいだけであれば、
ShowDialogに引数をつけるような感じではいかがでしょうか?
ちなみに、以下のような感じです。


Public Shadows Sub ShowDialog(ByVal ii As Integer)
'' iii はこのForm内で宣言
me.iii = ii
MyBase.ShowDialog()
End Sub
■No2571に返信(SHさんの記事)
> もしくは、単にForm1からForm2を起動するときに、
> 変数の値を渡したいだけであれば、
> ShowDialogに引数をつけるような感じではいかがでしょうか?
> ちなみに、以下のような感じです。
>
>
> Public Shadows Sub ShowDialog(ByVal ii As Integer)
> '' iii はこのForm内で宣言
> me.iii = ii
> MyBase.ShowDialog()
> End Sub
>

すいません。便乗させてください。
まさに、form1のボタン押下でform2を起動する際に引数を渡したいです。
今は、とりあえず、引数としたい変数は、publicにして逃げて、ボタンのclickイベントで
  Dim f2 As New form2
f2.ShowDialog()
とだけ書いています。

申し訳ありませんが、もう少し詳しく教えていただけませんか?
上記の関数はform1側で記述するのでしょうか?
よろしくお願いいたします。
きいぼーです。
>> Public Shadows Sub ShowDialog(ByVal ii As Integer)
>> '' iii はこのForm内で宣言
>> me.iii = ii
>> MyBase.ShowDialog()
>> End Sub
これは、from2に記述してください。

from1にて
Dim f2 As New form2
f2.ShowDialog(1)

とすると、form2のiiiに値をわたせます。

同様に
以下のように宣言すると、showの時に値を渡せます。

Public Shadows Sub Show(ByVal ii As Integer)
'' iii はこのForm内で宣言
me.iii = ii
MyBase.Show()
End Sub
横からお邪魔してすいませんでした。
とっても参考になりました。
ありがとうございます!

DOBON.NET | プログラミング道 | プログラミング掲示板