■ SSTABにボタンをロード

[Visual Basic Q & A 掲示板] [過去ログの一覧]


ささ 2008/02/15(金) 09:24:18
SSTABでタブを三枚使ってます。

それぞれのタブにボタンをコードからロードして、たくさん配置したいです。

しかし、タブ1にボタンをおいて、コードでロードすると、
Call Load(OptArrow(tmp))

全て、タブ1にロードされてしまします。

タブ1、タブ2の全てのページに同じコントロール名で配置したいのですが、
タブ2へボタンをロードできません。

どうすればよいのでしょうか?

魔界の仮面弁士 2008/02/15(金) 11:14:30 <常連>
動的ロードする場合は、タブ番号と配置座標に注意してください。

まずは実験として
 タブ1 に Label1
 タブ2 に Label2
 タブ3 に Label3
を配置して、
 Private Sub Form_DblClick()
  Debug.Print Label1.Left, Label2.Left, Label3.Left
 End Sub
を実行してみてください。
タブが切り替わるごとに、内部座標が変化していますよね。


ロード後に、どのタブのどの座標に配置するのかを指定しているかどうか、
もう一度確認してみてください。サンプルとしてはこんな感じ。

Load OptArrow(tmp)
SSTab1.Tab = タブ番号
Set OptArrow(tmp).Container = SSTab1  '★
OptArrow(tmp).Move L, T, W, H
OptArrow(tmp).Visible = True

# テンプレートなるコントロールが、もともと SSTab の上にある場合は、
# ★の行は無くても構いません。

ささ 2008/02/15(金) 11:40:09
[[解決]]

解決しました。
ありがとうございます。

毎週金曜日はポイント最大3倍!さらに4倍のチャンスも!

Programming Library