🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: fj.lang.visualbasic
5 messages
5 total messages Started by Yosi Sun, 05 Apr 1998 00:00
[Q]MDI子フォーム
#248
Author: Yosi
Date: Sun, 05 Apr 1998 00:00
14 lines
1032 bytes
 初めまして、Yosiです。

 MDIフォームを使うと、プログラムを実行したときに、子フォームが
一つ表示されますが、この子フォームを最初は表示させず、「フォームの
作成」ボタンを押したときに一つづつ表示させるようにするには
どうしたらよいのでしょうか?
 よろしくお願いします。

'************************************************
' Name Yosi
'
' Mail Address kurata_y@p1.coralnet.or.jp
'************************************************
Re: [Q]MDI子フォーム
#249
Author: 市崎 大介
Date: Sun, 05 Apr 1998 00:00
14 lines
1215 bytes

Yosi wrote in message <6g7sve$gg7$1@ptop03.ptop.ad.jp>...
> 初めまして、Yosiです。
> MDIフォームを使うと、プログラムを実行したときに、子フォームが
>一つ表示されますが、この子フォームを最初は表示させず、「フォームの
>作成」ボタンを押したときに一つづつ表示させるようにするには
>どうしたらよいのでしょうか?
> よろしくお願いします。


プロジェクトの設定で、「スタートアップ」がMDI子フォームになっていませんか?
これをMDI親フォームなり、その他のフォームなり、Sub Mainなりに変更すれば
OKです。
[Q]MDI子フォームが二つできるんですが・・・
#274
Author: Yosi
Date: Wed, 08 Apr 1998 00:00
41 lines
2189 bytes
 Yosiです。ご回答ありがとうございます。
   ・・・さっそくですが、またわからないことがありました。

市崎 大介 wrote in message <6g82fr$a0b$1@nn-tk003.ocn.ad.jp>...
>
>Yosi wrote in message <6g7sve$gg7$1@ptop03.ptop.ad.jp>...

>> MDIフォームを使うと、プログラムを実行したときに、子フォームが
>>一つ表示されますが、この子フォームを最初は表示させず、「フォームの
>>作成」ボタンを押したときに一つづつ表示させるようにするには
>>どうしたらよいのでしょうか?
>
>
>プロジェクトの設定で、「スタートアップ」がMDI子フォームになっていませんか?
>これをMDI親フォームなり、その他のフォームなり、Sub Mainなりに変更すれば
>OKです。
>

  ご指摘のとおり、、「スタートアップ」がMDI子フォームになって
ました。

 そこで、Sub Main を作り、
Public Sub main()
    MDI親フォーム.Show
End Sub

として、MDIフォームの「子フォーム作成ボタン」に、
Private Sub 子フォーム作成ボタン_Click()
    Dim MakeForm As New 子フォーム
    MakeForm.Show
End Sub

として実行したところ、「子フォーム作成ボタン」を最初に押したとき、
2つの子フォームが表示され、以後「子フォーム作成ボタン」を一回押す
ごとに一つずつ子フォームが作成されます。
 
 また、表示された全ての子フォームを終了させ、もう一度
「子フォーム作成ボタン」を押すと、また二つの子フォームが作成されます。

 これはどういうことなのでしょうか?
Re: [Q]MDI 子フォームが二つできるんですが・・・
#279
Author: Sato Masahiro
Date: Thu, 09 Apr 1998 00:00
33 lines
1771 bytes
In article <6gg1e4$70l$1@ptop03.ptop.ad.jp>, Yosi wrote:

>として実行したところ、「子フォーム作成ボタン」を最初に押したとき、
>2つの子フォームが表示され、以後「子フォーム作成ボタン」を一回押す
>ごとに一つずつ子フォームが作成されます。
> 
> また、表示された全ての子フォームを終了させ、もう一度
>「子フォーム作成ボタン」を押すと、また二つの子フォームが作成されます。

原因の一つとして考えられるのは、New によって作成した
インスタンスのプロパティにアクセスするつもりで、下記の
ようなコードを書いた場合です。

Private Sub 子フォーム作成ボタン_Click()
    Dim MakeForm As New 子フォーム
    MakeForm.Show
    子フォーム.Caption = "Hello" ' 間違い
End Sub

正しくは、

Private Sub 子フォーム作成ボタン_Click()
    Dim MakeForm As New 子フォーム
    MakeForm.Show
    MakeForm.Caption = "Hello" 
End Sub

です。

-- 
Computer Institute of Japan, Ltd.
佐藤正宏 masahiro@cij.co.jp
Re: [Q]MDI 子フォームが二つできるんですが・・・
#159
Author: Yosi
Date: Sun, 12 Apr 1998 00:00
38 lines
1962 bytes

Sato Masahiro wrote in message <6ghain$nqe$1@hawaii.ykhm.cij.co.jp>...
>In article <6gg1e4$70l$1@ptop03.ptop.ad.jp>, Yosi wrote:
>

>>2つの子フォームが表示され、以後「子フォーム作成ボタン」を一回押す
>>ごとに一つずつ子フォームが作成されます。
>> 
>
>原因の一つとして考えられるのは、New によって作成した
>インスタンスのプロパティにアクセスするつもりで、下記の
>ようなコードを書いた場合です。
>
>Private Sub 子フォーム作成ボタン_Click()
>    Dim MakeForm As New 子フォーム
>    MakeForm.Show
>    子フォーム.Caption = "Hello" ' 間違い
>End Sub
>
>正しくは、
>
>Private Sub 子フォーム作成ボタン_Click()
>    Dim MakeForm As New 子フォーム
>    MakeForm.Show
>    MakeForm.Caption = "Hello"
>End Sub
>
>です。
>

 Yosiです。
 ヘルプをよーく読むと、MDIフォームにはAutoShowChildrenプロパティが
あり、それをFalseにすると表示されなくなりました。

 お騒がせしてすみませんでした。

 ご回答をくださった方、ありがとうございました。
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads