Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

один TStrings   Найти похожие ветки 

 
akvilon ©   (2005-02-25 00:06) [0]

Здравствуйте,
как заставить различные TComboBox, TListBox и пр. использовать один TStrings, общий, то есть один набор строк
по идеи надо в items поместить указатель на один и тот же TStrings, но как это сделать, если при присваивании items выполняется Assign()


 
Palladin ©   (2005-02-25 00:22) [1]

Не получится. Если TListBox еще способен работать в режиме OwnerData. То TComboBox нет.


 
akvilon ©   (2005-02-25 00:33) [2]

это плохо :(, для меня это ведет к неизбежному дублированию большого количества одной и той же информации, которую всего лишь удобно показать в двух-трех местах программы (в двух-трех T_Box"ах)

а по отдельности для TListBox"ов и TComboBox"ов это возможно?


 
iskatel ©   (2005-02-25 00:33) [3]

2akvilon а оно тебе надо? задача то какая, чтоб изменялись синхронно? ну и пусть их будет два, нкапиши обработчик он чендж и синхронизируй (например просто свойство текст одного = текст другого)


 
akvilon ©   (2005-02-25 00:43) [4]

2 iskatel
дело в том, что в них записывается инфа из БД и совсем не маленького размера, при чем измениться она может не только добавлением новых строк в те или иные items

встает проблема синхронизации не отдельных боксов между собой, а каждого из них с БД

да и спортивная жилка заела :), лишние расходы памяти, причем очевидные


 
iskatel ©   (2005-02-25 00:57) [5]

странно это, на кой х держать 2 одинаковых списка, и какой юзер будет выбирать чтото в комбобоксе "совсем не маленького размера" да и для работы с БД свои контролы есть, которые данные прям из БД и берут, а не из TStrings


 
Poirot ©   (2005-02-25 14:16) [6]

Ну вот если посмотреть на эту штучку, то впринципе можно организовать то, что ты хочешь:)
ЗЫ: Это только предположение на первый взгляд:)

procedure TCustomCombo.SetItems(const Value: TStrings);
begin
 if Assigned(FItems) then
   FItems.Assign(Value)
 else
   FItems := Value;
end;


 
КаПиБаРа ©   (2005-02-25 14:21) [7]

akvilon ©   (25.02.05 0:43) [4]
Данные из БД нужно выводить в DBCombobox, DBLookupCombobox, DBListBox.



Страницы: 1 вся ветка

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1108327778
Коля
2005-02-13 23:49
2005.03.13
Как узнать индекс поля где находится указатель в Query?


14-1108842751
Hmm
2005-02-19 22:52
2005.03.13
Необходима инфа по Oracle + Delphi...


14-1109155428
Knight
2005-02-23 13:43
2005.03.13
Аська у кого сегодня работает?


1-1109596209
Cat
2005-02-28 16:10
2005.03.13
Почти одинаковые два проекта


1-1109559279
rainy_day
2005-02-28 05:54
2005.03.13
ЧТо из себя представляет класс TDCB?