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

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

Снова ТListBox (избегание ошибки) [D3, Win95/98, WinME, WinXP]


Evants ©   (2002-07-04 10:36:00) 

Всем доброго утра. Снова требуеться Ваша помощь по ТListBox.
Как сделать, чтобы при клике по пустому пространству ТListBox"а не выскакивала ошибка? Спасибо.


Kaban   (2002-07-04 11:14:00) [1]

Ну господи, перепутал
if ListBox1.ItemAtPos(Point(1,1), true) <> -1 then
трудно посмотреть, что возвращает функция ItemAtPos?


Evants   (2002-07-04 11:10:00) [2]

При компилляции...

if not (ListBox1.ItemAtPos(Point(x,y),true) = nil) then
ListBox1.ItemIndex:=ListBox1.ItemAtPos(Point(x,y),true);


...возникает следующая ошибка:
Operator not applicable to this operand type


Kaban   (2002-07-04 10:44:00) [3]

Если это продолжение вопроса:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1025717829&n=0
то делайте так
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if not (ListBox1.ItemAtPos(Point(x,y),true) = nil) then
ListBox1.ItemIndex:=ListBox1.ItemAtPos(Point(x,y),true);
end;


Кулюкин Олег   (2002-07-04 10:40:00) [4]

if ListBox1.ItemIndex <> -1 then
begin
...
end;


Kaban   (2002-07-04 10:39:00) [5]

сама по себе ошибка при клике возникать не может, следовательно, вы этот клик обрабатываете. проверяйте наличие элемента с помощью функции ListBox1.ItemAtPos


Наверх

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