投稿日 | : 2003/09/20(Sat) 23:52 |
投稿者 | : Say |
Eメール | : |
URL | : |
タイトル | : Re^3: ●実行後に追加したTextBoxなどを制御したいのですが |
> コントロールの動的配置とはどのように宣言し、配置させれば良いのでしょうか?
ControlsコレクションのAddメソッドの使用例はヘルプを参照してください。
CommandButtonの例が載っていますが、TextBoxに変更してみればいいでしょう。
また、ここの過去ログにもコードがあるでしょう。
Load ステートメントのヘルプでの記述は参考にしにくいでしょうから説明します。
まず、VBを起動し、標準Exeを選択し、Form上にTextBoxとCommandButtonを
1つずつ配置してください。
次に、配置したTextBoxを選択し、プロパティウィンドウでIndexプロパティに0を設定します。
その後、コードエディタでForm1に以下のコードを記述して実行してみてください。
Option Explicit
Private lngIndex As Long
Private Sub Command1_Click()
lngIndex = lngIndex + 1
Load Text1(lngIndex)
Text1(lngIndex).Top = Text1(lngIndex - 1).Top + Text1(lngIndex - 1).Height + 100
Text1(lngIndex).Visible = True
End Sub
> またクリックした時にハンドルを取得するにはどのようにすれば良いのでしょうか。
ここでいうハンドルはデバイスコンテキストハンドルやウィンドウハンドルのような
一種のIDをさしているわけではありません。
例えばVBの編集画面で、コントロールを選択すると選択したコントロールの周りに
四角い黒い点が8個現われ、選択状態であることを示すと同時に
その点にマウスカーソルをあわせるとカーソルの形状が変化し、
コントロールのサイズ変更が可能になります。
この四角い黒い点も「ハンドル」と呼ばれており、
前回の回答に記した「移動用ハンドル」はこの類になります。
当然ながら、標準でハンドルを表示する機能はありませんから、
「自力で工夫して追加してください」と付記した次第です。
勿論、ハンドル表示などせず処理することも可能ですから
必須というわけではありません。