リストボックスのアイテム数を知るには?

解決


アル  2007-01-27 09:36:57  No: 24620  IP: 192.*.*.*

リストボックスの中にあるアイテムの数を変数に収める方法と、リストボックスの中にあるアイテム名一つ一つを個別に変数に収める方法がわかりません。

当方初心者なもので説明自体が意味不明かもしれませんが、どうかわかる方がいらっしゃいましたら教えて頂きます様お願いします。

編集 削除
HOta  2007-01-27 10:44:07  No: 24621  IP: 192.*.*.*

ヘルプは見ましたか?

Listbox1.Items.count;

Listbox1.Items.Add('ItemName');

ItemsはTStrings型です。
TStringsのHelpを見ましょう。

編集 削除
アル  2007-01-27 17:38:07  No: 24622  IP: 192.*.*.*

HOtaさんありがとう御座います。
チャレンジしてみます。

編集 削除
アル  2007-01-28 05:01:10  No: 24623  IP: 192.*.*.*

ヘルプを参照してみてもイマイチわからない上に、色々試してみてもエラーが出てしまうので、恐縮ですが再度質問させて頂きます。

Listbox1.Items.count;
Listbox1.Items.Add('ItemName');

いずれも、その値を変数に格納するには、どうすればいいのでしょう?
特にListbox1.Items.Add('ItemName');の方はアイテムの数が不定の為、複数の値が返る場合に、アイテムひとつ一つを変数一つ一つに個別に格納する方法もわかりません。

稚拙な質問の為、大変恐縮ですがそれでもお答え頂ける様、よろしくお願いします。

編集 削除
HOta  2007-01-28 06:08:41  No: 24624  IP: 192.*.*.*

TStringsのHelpをみましたか?
Listbox1.ItemsはTStrings型です。

少し、説明してください。格納するのは、どのような物でしょうか?
どのようにしたいのでしょうか?
アイテムの数が不定とはどのような物でしょうか?
複数の値が返る場合とはどうなるのでしょうか?
アイテムひとつ一つを変数一つ一つに個別に格納するとはどのようにしたいのでしょうか?

編集 削除
アル  2007-01-28 07:17:43  No: 24625  IP: 192.*.*.*

HOtaさんレスをありがとうございます。
私自身の理解力が低いせいか、TStringsのヘルプを参照しても、ListBoxの仕様がわかりませんでした。
また、説明がおかしかったり足りなかったみたいでお手数をおかけしてすみません。

やりたい事を説明させて頂きます。
他のリストボックスやコンボボックスとListBox1のアイテムデータを共有したり、ListBoxのアイテムをユーザーに追加・編集・削除させ、最終的に編集が完了したリストボックスの複数のアイテムを、一つ一つアイテム毎の名前でディレクトリを作成したいのです。

ListBoxのアイテム追加、編集、削除方法はわかったのですが、それ以外が過去ログを参照しても類似する案件も見つからず、リストボックスのアイテムを配列で変数に保存し、その変数内容でディレクトリの作成をする方法が思い浮かんだ為に以前の質問をさせて頂きました。
最初から目的を明記した方がよかったですね、お手間を取らせて申し訳御座いません。

編集 削除
HOta  2007-01-28 07:40:21  No: 24626  IP: 192.*.*.*

ListBox1.Items.Assign(ListBox2.Items);
でコピーできます。

for i := 0 to ListBox1.Items.Count - 1 do
begin
  if not DirectoryExists('C:\' + ListBox1.Items[i]) then
    ForceDirectories('C:\' + ListBox1.Items[i]);
end;

でディレクトリの作成ができると思います。

編集 削除
アル  2007-01-28 08:22:10  No: 24627  IP: 192.*.*.*

HOtaさんありがとうございます。
書いていただいた内容で希望通りの動作が確認できました。
本当にありがとうございました。

編集 削除