tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルコントロールの取得
記事No12261
投稿日: 2008/05/13(Tue) 17:42
投稿者りんご
テキストボックス text1(0)を作成し、
Loadでtext1()でインデックスが加算し、作成される処理がある場合
現在のFORMでtext1がいくつあるか、取得するにはどうしたらいいですか?

[ツリー表示へ]
タイトルRe: コントロールの取得
記事No12262
投稿日: 2008/05/13(Tue) 18:03
投稿者るしぇ
加算したインデックスを変数に覚えておけば?

[ツリー表示へ]
タイトルRe^2: コントロールの取得
記事No12263
投稿日: 2008/05/13(Tue) 18:13
投稿者りんご
> 加算したインデックスを変数に覚えておけば?

それをやりたくないのです。
例としてTextboxコントロールを1つで出しましたが、実際は複数になりますので、
コントロールの種類とコントロール名をパラメータで渡したら、カウントして
返してくれるものを作成したいのです。

[ツリー表示へ]
タイトルRe^3: コントロールの取得
記事No12264
投稿日: 2008/05/13(Tue) 18:31
投稿者るしぇ
>それをやりたくないのです。
理由は?
変数を複数用意しないといけないから?
配列でもコレクションでも使えばいいのでは?

>コントロールの種類とコントロール名をパラメータで渡したら、カウントして
そのまま出来ると思いますが、Load で作成している時点で各コントロールの
数は変更されないのでしょう?
わざわざ全てのコントロールを舐めて数えなおす時点で無駄に思います。

コントロールの種類とコントロール名をパラメータで渡せるということは、
コントロールの種類とコントロール名は変数で覚えているのでは?
。。。同じことだと思いますが?

[ツリー表示へ]
タイトルRe^3: コントロールの取得
記事No12265
投稿日: 2008/05/13(Tue) 18:57
投稿者
> 例としてTextboxコントロールを1つで出しましたが、実際は複数になりますので、
> コントロールの種類とコントロール名をパラメータで渡したら、カウントして
> 返してくれるものを作成したいのです。

text1.UBound の値に +1 すれば個数は判るかな?
コントロールが配列になってて、0からの連番(飛び番なし)が前提ですけど。

[ツリー表示へ]
タイトルRe^4: コントロールの取得
記事No12268
投稿日: 2008/05/13(Tue) 21:37
投稿者魔界の仮面弁士
> text1.UBound の値に +1 すれば個数は判るかな?
> コントロールが配列になってて、0からの連番(飛び番なし)が前提ですけど。

「個数」なら text1.Count で取れますよ、飛び番があっても。


ちなみに、現在ロード済みの番号を列挙するのであれば、
    Dim T As TextBox
    For Each T In Text1
        Debug.Print T.Index
    Next
といった感じで。

[ツリー表示へ]
タイトルRe^5: コントロールの取得
記事No12274
投稿日: 2008/05/14(Wed) 09:13
投稿者
> 「個数」なら text1.Count で取れますよ、飛び番があっても。
>

そうか、Countがありましたね。
なんと回りくどく不完全な方法使ってんだろ自分…

[ツリー表示へ]