![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Событие для ListBox
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
человек слишком витиевато вопрос задал ) я подумал, что он хочет пунктирную рамку, фокус то есть, с одного элемента на другой передвинуть