• ベストアンサー

FileListBoxコントロールで扱えるファイル数は?

こんにちは。 いつもお世話になっております。 VBのFileListBoxコントロールで扱えるファイル数はいくつまでなのでしょうか? 6万ファイルがあるフォルダへのパスを「.path」プロパティにセットしたところ、 「.ListCount」に負の値がセットされたので6万ファイルは扱えないようなのですが。 ヘルプなどを見ても明記されていませんのではっきりとした数が分かりません。 ご存知の方がいましたらご教示下さい。 <環境> Windows 2000, VB6.0

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

  • ベストアンサー
回答No.1

ちと手元に VB 6.0 が無いので推測なんですが、FileListBox コントロールの ListCount プロパティの型は Integer だったと思うので整数は 32,767までしか表せなかったかと思います。

参考URL:
http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200208/02080030.txt
sputnik8823
質問者

補足

temtecomai2さん、回答ありがとうございます。 なるほど、ListCountプロパティの型はIntegerだったのですね。 確かに32767を超えた場合は負の値となりました。 (参考URLもありがとうございます。大変参考になりました。) しかし、32767ファイルとはちょっと少ないですね。 一応、ListCountが負の値の場合は+65536することでファイル数は65535までカウントできますが、 肝心の中身が取得できません。(.List(-32767)は""となってしまいますね。) どうにかして6万ファイルを扱いたいのですが、拡張などできないものでしょうか・・・。

その他の回答 (2)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

こんにちは。KenKen_SP です。 > どうにかして6万ファイルを扱いたいのですが... それほど多くのアイテムをどのように使うか興味のあるところですが... 配列にパスを保持しておいて、WEB ページ...例えば Google の検索結果 が多い場合に表示される「次ページ」といったページ管理の仕組みを作っ てみては? 配列 Buf(59999)に 6万要素のパスがあるなら 初回は Buf(0) ~ Buf(499) ぐらいをリストボックスに AddItem する。 未表示の分があるので、「次ページ」のコマンドボタンの Enabled を True にし、それがクリックされたら、次は Buf(500) ~ Buf(999) を表示...もちろん「戻る」も作ります。 通常コントロール上に数多くのアイテムがあっても操作しにくいと思い ますよ。上記のような仕組み+検索でジャンプできる仕組みを合わせる と良いと思います。できれば、抽出みたいな機能もあると便利でしょう。 また、このような仕組みは速度面でも効果があります。 推測なので、意図をはずしていたらスルーして下さい。ご参考までに。

  • bouyapin
  • ベストアンサー率60% (6/10)
回答No.2

リストボックスコントロールにファイル名を追加して「FileListBoxもどき」として使ってみてはどうでしょう?

関連するQ&A