Аналог ComboBox (Delphi)

Вопросы программирования и использования MSEide + MSEgui.

Модератор: Модераторы

Аналог ComboBox (Delphi)

Сообщение bloodlines » 05.06.2009 11:47:18

Подскажите пожалуйста каким виджетом лучше пользоваться для достижения функционала сопоставимого с ComboBox (Delphi). И если не сложно напишите код как добавлять строки (элементы) в этот виджет.

Суть - необходимо заносить в некий виджет с выпадающим списком строки из текстового файла.

В Delphi это выглядит так:

Код: Выделить всё
ComboBox1.Items.Add('Новая строка');


Как сделать подобное в MSEIDE? Пробовал разобраться с tselector, tdropdownlistedit, tenumedit... так и не понял как их заполнять. Помогите пожалуйста!
Аватара пользователя
bloodlines
постоялец
 
Сообщения: 100
Зарегистрирован: 05.11.2008 11:26:19

Re: Аналог ComboBox (Delphi)

Сообщение debi12345 » 06.06.2009 00:00:52

Пример для выпадающего списка под строковые ключи (tkeystringedit):
- назначить в дизайне dropdown.cols:= 2

Пример кода :

Код: Выделить всё
type
datarec = record
  key: msestring;
  value: msestring;
end;

const data: array[0..4] of datarec = ( 
  (key: 1; value: 'Диля'),
  (key: 2; value: 'Феруза'),
  (key: 3; value: 'Лена'),
  (key: 4; value: 'Ирода'),
  (key: 5; value: 'Альбина')
);

...

procedure mainfo.created(..);
var
  i: integer;
begin
for i:= low(data) to high(data) do begin
    with tkeystringedit1.dropdown.cols,data[i] do begin
      addrow([value,key]);
    end;
  end;
end;
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Аналог ComboBox (Delphi)

Сообщение bloodlines » 08.06.2009 11:11:30

Спасибо! Помогло! А вообще можете подсказать чем отличаются MSEIDE виджеты с выпадающими списками (tselector, tdropdownlistedit, tenumedit...), и какой из них по вашему мнению наиболее универсальный?

P.S. MSEIDE конечно классная штука, но без мануала приходиться зачастую программировать как "ёжик в тумане" - одно спасает - есть исходники. По исходникам в основном строю дерево компонентов и определяю какие методы и поля у них присутствуют.
Аватара пользователя
bloodlines
постоялец
 
Сообщения: 100
Зарегистрирован: 05.11.2008 11:26:19

Re: Аналог ComboBox (Delphi)

Сообщение debi12345 » 08.06.2009 12:22:24

От Мартина:
Hi bloodlines,
Please read the thread "Question about widgets" from 2009-01-02 in NNTP
news://news.grid-sky.com/public.mseide-msegui.talk
and
http://wiki.freepascal.org/Reference:_MSEgui
The nearest MSEgui equivalent for TComboBox is tdropdownlistedit.

Can somebody forward the message to:
http://www.freepascal.ru/forum/viewtopic.php?t=4454
?Hi bloodlines,
Please read the thread "Question about widgets" from 2009-01-02 in NNTP
news://news.grid-sky.com/public.mseide-msegui.talk
and
http://wiki.freepascal.org/Reference:_MSEgui
The nearest MSEgui equivalent for TComboBox is tdropdownlistedit.


От себя:

1) универсальных выпадающих списков нет - потому что универсальный тип VARIANT принципиально избегается (вследствие его крайней тромознутости), хотя в принципе любой тип может быть конвертирован к строковому ( под который "заточены" TKEYSTRINGEDIT,..)
2) выпадающий список может одновременно отображать несколько полей ( очень удобно )
3) список может фильтроваться в момент открытия через обработчиком "dropdown.OnFilter", что удобно для организации цепочки зывисимых выборов.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Аналог ComboBox (Delphi)

Сообщение bloodlines » 08.06.2009 12:55:11

Большое спасибо!
Аватара пользователя
bloodlines
постоялец
 
Сообщения: 100
Зарегистрирован: 05.11.2008 11:26:19

Re: Аналог ComboBox (Delphi)

Сообщение Attid » 09.06.2009 14:16:15

добавлю что в этом подфоруме есть тема FAQ итам тоже есть пример viewtopic.php?p=23967#p23967
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E


Вернуться в MSEide + MSEgui

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru