OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Visual Basicでツリービューリストの項目数を増やすには?

  • 困ってます
  • 質問No.237585
  • 閲覧数381
  • ありがとう数2
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 34% (8/23)

VB4でツリービューコントロールを使ってリストを作成するとある程度以上のノード数になるとindex errorになります。
正確には数えていませんが、感覚的に200行ぐらいです。

この制限を外す方法はありませんか?

よろしくお願いします。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル12

ベストアンサー率 65% (276/422)

そうですか・・・・
元ソースの抜粋をチョット改造してあったのですね。

しかしVersionが古くとも一緒です。

エクスプローラはTreeViewを使用しています。Win95のエクスプローラと言えども、200個以上のフォルダは閲覧できないなんて制限はありませんよね。それと一緒のはずなのですが・・・

現在公開してもらったサンプルソースでも200行ぐらいでエラーが起こるのですか?コード的には合ってるように見えます。
もしかしたら読み込んでるデータに不具合があるとか?

実際のエラーメッセージを正確に教えてもらえると、ちょっと参考になるかも?
お礼コメント
natai

お礼率 34% (8/23)

ありがとうございました。
諦めずにがんばってみます。
投稿日時 - 2002-03-21 09:04:46
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル12

ベストアンサー率 65% (276/422)

きちんと実験をしてませんが・・・ こちらの環境では問題なく20000件以上の登録ができました。 OS :WIN2KSP2 TOOL:VB6SP5 200行の制限なんてありませんよ。 コードに問題があると思われます。 Nodeを追加している付近のコードを公開できませんか? ...続きを読む
きちんと実験をしてませんが・・・
こちらの環境では問題なく20000件以上の登録ができました。
OS :WIN2KSP2
TOOL:VB6SP5

200行の制限なんてありませんよ。
コードに問題があると思われます。

Nodeを追加している付近のコードを公開できませんか?
補足コメント
natai

お礼率 34% (8/23)

早速のコメントありがとうございます。
ご診断よろしくお願いします。

"test.ini"というファイルから1行ずつ読み込んで
先頭文字が"%"なら親ノードとして以降の文字列を登録、それ以外なら
その子ノードとして全部の文字列を登録、というつもりで作りました。

150行ぐらいのファイルならOKですが、200行ぐらいでエラーです。
「実行時エラー35600 インデックスが指定可能範囲をこえています」と
出ます。

よろしくお願いします。

Private Sub Form_Load()
Dim s As String
Dim nd As Node
Dim i, j As Integer

i = 0
j = 0
Open "test.ini" For Input As #1
Do
If EOF(1) Then Exit Do
Line Input #1, s
i = i + 1
If Left$(s, 1) = "%" Then
Set nd = tree1.Nodes.Add(, , , Right$(s, Len(s) - 1), 0)
j = i
Else
Set nd = tree2.Nodes.Add(j, tvwChild, , s, 0)
End If
Loop
Close #1

End Sub
投稿日時 - 2002-03-19 23:24:01


  • 回答No.2
レベル12

ベストアンサー率 65% (276/422)

親となる"%"で始まる文字列のIndex値を、変数Jにて一時記憶している処理ですよね? 親となるNodeは[tree1]に追加されていて、子となるNodeは[tree2]に追加されています。 同じTreeView内でないと、親子の関係が結べないのではないのでしょうか? ...続きを読む
親となる"%"で始まる文字列のIndex値を、変数Jにて一時記憶している処理ですよね?

親となるNodeは[tree1]に追加されていて、子となるNodeは[tree2]に追加されています。

同じTreeView内でないと、親子の関係が結べないのではないのでしょうか?
補足コメント
natai

お礼率 34% (8/23)

ご回答ありがとうございます。

すみません。元のツリーの名前が結構恥ずかしかったので一般的な名前に置き換えたのですが、その時に間違えたようです。両方ともtree1だと考えてください。

お手数ですが、もう一度診ていただけませんでしょうか。

OSはwin95でVB4です。古くてすみません。
投稿日時 - 2002-03-20 14:25:18
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ