tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
Form上にFormを配置(VB6.0)_1 ( No.1 )  [親スレッドへ]
日時: 2011/04/05 13:21
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[フォーム][][]                                                      *
* キーワード:画面,スクロール,ウィンドウ,,,                                       *
***********************************************************************************

元質問:フォームの上にフォームを乗せる - emi  2005/01/06-20:34 No.1448

Form1の上にForm2を乗せて合体させてしまいたいのですが、良い方法はあるでしょうか?
ちょうどMDIフォームのような感じで、Form1が親でForm2が子みたいな・・
でもForm2はForm1上で移動できる必要は無く、固定しておきたいのです。
MDIFormを使用せずやりたいです。


-------------------------------------------------------------------------------
Re: フォームの上にフォームを乗せる - 魔界の仮面弁士   2005/01/07-09:58 No.1453
-------------------------------------------------------------------------------

VB6の場合は、SetParent APIを使う方法ぐらいかな…。

Option Explicit

Private Declare Function SetParent Lib "user32" ( _
        ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private WithEvents ChildForm As Form

Private Sub Dispose()
    If Not ChildForm Is Nothing Then
        Unload ChildForm
        Set ChildForm = Nothing
    End If
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Dispose
End Sub

Private Sub Command1_Click()
    Dispose
    Set ChildForm = New Form2
    ChildForm.Caption = Format(Time(), "Long Time")
    ChildForm.Move 0, 0, 1440, 1440
    SetParent ChildForm.hWnd, Me.hWnd
    ChildForm.Visible = True
End Sub

> でもForm2はForm1上で移動できる必要は無く、
> 固定しておきたいのです。
と言うことは、Form2はサイズ変更もしないのですよね。
見た目だけの問題なら、PictureBoxをFormに見立てて使ってみては如何でしょう。



 [スレッド一覧へ] [親スレッドへ]