VB6.0を使用しています。
プログラムで動的にテキストボックスを配置したいと思っています。
指定したTabコントロールの中に配置したいのですが
どのようにしたら良いのでしょうか?
Tabにページが3つあったとして、2つ目のタブに
テキストボックスを配置したいです。
もしよろしければ、ご教示お願い致します。
かなり適当ですけど
Public Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
Private oText As TextBox
Private oText1 As TextBox
Private Sub Command1_Click()
Set oText = Controls.Add("VB.TextBox", "Hello")
Set oText1 = Controls.Add("VB.TextBox", "Hello2")
With oText
.Top = 800
.Left = 500
.Width = 2000
.Height = 400
.Text = "Hello World!"
.Visible = True
SSTab1.Tab = 1
Call SetParent(oText.hWnd, SSTab1.hWnd)
End With
With oText1
.Top = 900
.Left = 500
.Width = 2000
.Height = 400
.Text = "Hello World!"
.Visible = True
SSTab1.Tab = 2
Call SetParent(oText1.hWnd, SSTab1.hWnd)
End With
End Sub
SSTab1.Tabでタブ選択して
API のSetParent(oText.hWnd, SSTab1.hWnd)
使えばうまくいきそうです。
動的にってのは自前でうまいこと実装してみてください。
定番回答ではありません。SetParentは何か問題があったかも。
あ、SSTabの話でよかったのかな?
編集 削除SSTabの場合なら過去ログにありますよ。
SSTab上にコントロールを動的に配置するには?
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200604/06040058.txt
のさん
ご回答ありがとうございました。
無事解決できました。
matsuさん
ページを紹介頂きありがとうございます。
参考になりました。