Kak mozno svjazatj dva ComboBox?

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

BHy4ok
Сообщения: 237
Зарегистрирован: 01 май 2007, 09:03
Откуда: г.Находка
Контактная информация:

itwork писал(а):Я НЕ ВЕРЮ!

Ты должен знать основные элементы т.е. все что находится в ComboBox1. Во втором боксе можешь создать просто массив и он сам их будет добавлять.
Это тебе не БД. Ты либо сверяешь с названием и потом отображаешь исходя из всего во втором боксе либо по нумерации, но опять-же должна быть четкая последовательность.
< L3X. (ICQ: 8721378, Mail - l3x@list.ru)
Аватара пользователя
somewhere
Сообщения: 1858
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

Но ведь данные откуда то беруться! Что вы все шепчетесь - БД, не БД! Скажите сразу откуда взять данные для боксов. Я вот тоже хочу чтобы комп по велению моей мысли работал, и я не верю что это невозможно.... пока невозможно...
It's a long way to the top if you wanna rock'n'roll
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

somewhere писал(а):Я вот тоже хочу чтобы комп по велению моей мысли работал, и я не верю что это невозможно.... пока невозможно...



+100. :D Правильно!

так а может указатели использовать ....
itwork
Сообщения: 79
Зарегистрирован: 28 дек 2006, 15:20

т.е чтото вроде этого
Изображение
MOTOCoder
Сообщения: 548
Зарегистрирован: 14 янв 2008, 20:27
Откуда: Россия, Псков

Я не могу врубиться - откуда конкретно берутся данные?
Допустим как я понимаю:
Есть список категорий (то, в первом боксе).
Тогда каждую категорию можно хранить в текстовом файле, имя которого соответствует индексу татегории(т.е. номеру строки в файле категорий). Тогда все просто:
1. Грузми в первый бокс файл категорий.
2. На onChange второго бокса вешаем что-то в роде
[syntax='Delphi']
ComboBox2.Items.LoadFromFile(Inttostr(ComboBox1.ItemIndex)+'.txt');
[/syntax]

По идее все.
Можно хранить всю базу в INI-файле.
Тогда именами категорий будут служить имена секций, в секциях - элементы категорий.
Или я неправильно понимаю поставленную задачу?
Ни что так не ограничивает фантазию программиста, как компилятор...
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

в файлах данных по-любому должна как-то указываться связь. т.е. для инфы CB2 должно быть указано к какой категории относится конкретная строка. Посему, поддерживаю, формат исходных данных - в студию
Изображение
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

uses IniFiles...
и будет вам счастье

Код: Выделить всё

[Овощи]
  kind1="Огурцы"
  kind2="Помидоры"
[Фрукты]
  kind1="Яблоки"
  kind2="Груши"
Создаем объект типа TIniFile, работаем с ним
ComboBox1.Items:=ini.ReadSections;

На OnChange:
ComboBox2.Items:=ini.ReadSectionValues(ComboBox1.items[ComboBox1.Itemindex]);

Примерно так, может, немного напутал с названиями методов, но библиотека inifiles неплохо документирована
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
YurikGL
Сообщения: 142
Зарегистрирован: 16 фев 2005, 21:54
Откуда: Уфа
Контактная информация:

А не проще все же сделать простенькую БД ADO+Access?
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

YurikGL писал(а):А не проще все же сделать простенькую БД ADO+Access?
На вкус и цвет все фломастеры разные. Некоторые пользователи впадают в панику, если им приходится работать с чем-то сложнее текстового файла. Все зависит от практического применения программы.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить