Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Событие для ListBox


Страницы:   1 2

ka1n ©   (2006-11-23 14:10:00) 

Какое событие отвечает за смену сфокусированного элемента?


Leonid Troyanovsky   (2006-12-02 12:20:00) [1]


> Leonid Troyanovsky ©   (25.11.06 12:06) [15]

> Выделение может смениться не только юзером,

Смениться оно, конечно, может.
Но, LBN_SELCHANGE уведомлять об этом не обязан,
sorry.

--
Regards, LVT.


Leonid Troyanovsky   (2006-12-02 12:15:00) [2]


> Elen ©   (01.12.06 14:54) [28]

> Значит чтото кроме этого не так прописано

Ну, у тебя тоже не все гладко.

Т.е., должно быть что-то вроде:

procedure tform1.q(var msg: TWMCommand);
begin
inherited;
if msg.NotifyCode = LBN_SELCHANGE then
  caption:=inttostr(ListBox1.ItemIndex);
end;

--
Regards, LVT.


Leonid Troyanovsky   (2006-12-02 12:12:00) [3]


> ka1n   (01.12.06 14:51) [26]

> я имею ввиду процедуру Q


LBN_SELCHANGE отсылается окну парента.
Т.е., если листбокс лежит, скажем, на панели,
то подобная процедура не сработает.

--
Regards, LVT.


Elen   (2006-12-01 14:54:00) [4]


> простите, но это у меня не работает

Значит чтото кроме этого не так прописано


Elen   (2006-12-01 14:52:00) [5]


> ka1n

Тогда используй OnClick


ka1n   (2006-12-01 14:51:00) [6]

я имею ввиду процедуру Q


ka1n   (2006-12-01 14:50:00) [7]

простите, но это у меня не работает


ka1n   (2006-12-01 14:50:00) [8]

простите, но это у меня не работает


Elen   (2006-11-28 09:18:00) [9]


> Тебе точно не достаточно стандартного дельфийского обработчика
> OnClick?

Достаточно. Просто выкрутасов захотелось. И Мне казалось что если это Click то он должен только на клик реагировать, а оно вон как...

>
> а она работает?

Ато!. ;)


ЮЮ   (2006-11-28 02:29:00) [10]


> Leonid Troyanovsky ©   (27.11.06 12:24) [21]


Честно признаюсь - не знал. А, учитывая известную строгость Object Pascal, даже и не предполагал, что такое возможно. На на вооружение вряд ли возьму :)


Leonid Troyanovsky   (2006-11-27 12:24:00) [11]


> ЮЮ ©   (27.11.06 10:37) [20]

> а она работает? Там даже список параметров не совпадает
> с объявленным.

Object Pascal Language Guide: The implementation section:
..
You can omit parameter lists from public procedure and function headings
when you define them in the implementation section; but if you include a parameter list, it must match the declaration in the interface section exactly.

--
Regards, LVT.


ЮЮ   (2006-11-27 10:37:00) [12]

Простите мою тупость, но я чето не пойму как работает и что делает процедура?

а она работает? Там даже список параметров не совпадает с объявленным.
по задумке при получении формой сообщения wm_command выводит в заголовок формы индекс текущей строки в  ListBox1.

или
Разгоняет мысль, иб ибо именно так сказано в
Elen ©   (23.11.06 14:22) [3]
А еще : Для разгона мысли


З.Ы. Тебе точно не достаточно стандартного дельфийского обработчика OnClick?


Elen   (2006-11-27 10:35:00) [13]


> как работает и что делает процедура

Процедура срабатывает когда проге приходит сообщение Command и выполняет вывод на капшин позицию выделенного элемента списка. (Это не тупость а любопытство - а я имею плохую привычку неточно писать код, как попало лиш бы работало, посему прошу прощения за непонятки - 1000 извинений)


> Leonid Troyanovsky

Яснышко. Получается OnClick все таки не всегда сработает, но зачастую его бывает с головой достаточно.


Palladin   (2006-11-27 10:35:00) [14]

За метлой, короче...


ka1n   (2006-11-27 10:28:00) [15]


> {$R *.dfm}
> procedure tform1.q;
> begin
>  caption:=inttostr(ListBox1.ItemIndex);
> end;
> end.


Простите мою тупость, но я чето не пойму как работает и что делает процедура?


Leonid Troyanovsky   (2006-11-25 13:49:00) [16]


> Elen ©   (23.11.06 14:22) [3]

> А еще : Для разгона мысли


inherited;

--
Regards, LVT.


Leonid Troyanovsky   (2006-11-25 12:06:00) [17]


> ЮЮ ©   (24.11.06 02:35) [5]

> TListBox.OnClick


Выделение может смениться не только юзером,
но и тем же LB_SETCARETINDEX.
Т.е., в общем случае - LBN_SELCHANGE

--
Regards, LVT.


Anatoly Podgoretsky   (2006-11-24 14:04:00) [18]

> ka1n  (24.11.2006 13:36:13)  [13]

Никакого, пример правильный и это не функция!


ka1n   (2006-11-24 13:36:00) [19]


> procedure tform1.q;
> begin
>  caption:=inttostr(ListBox1.ItemIndex);
> end;
> end


простите а какой параметр должен быть у функции tform1.q(???)


clickmaker   (2006-11-24 10:08:00) [20]


> [5] ЮЮ ©   (24.11.06 02:35)
>
> > clickmaker ©   (23.11.06 14:18) [2]
>
>
> Тёзку-то знать надо :)
>
> TListBox.OnClick

человек слишком витиевато вопрос задал ) я подумал, что он хочет пунктирную рамку, фокус то есть, с одного элемента на другой передвинуть


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо