Вниз
Скачать: CL | DM;

Определить номер текуще строки в ListBox !?   Найти похожие ветки 

 
312kbps   (2007-12-20 16:03) [0]

На фоме есть ЛистВокс в нем список.
К ЛистВоксу подцепелно меню.

при нажатии правой кнопки мыши над лист воксом выводится меню  далее обрабатывается процедура.
как мне узнать над какой строкой было вызвано меню ? узнать номер строки ?


 
Kerk ©   (2007-12-20 16:04) [1]

ListBox.ItemIndex ?


 
Kolan ©   (2007-12-20 16:05) [2]

> ListBox.ItemIndex ?

Даже лучьше

if Sender is TListBox then
 (Sender as TListBox).ItemIndex


 
312kbps   (2007-12-20 16:06) [3]

так можно узнать только после того как выделишь строку в списке, нажатием левой кн мышки

а мне надо узнать над кокой строкой было вызвано меню


 
Юрий Зотов ©   (2007-12-20 16:12) [4]

> 312kbps   (20.12.07 16:06) [3]

Юзер будет в восторге, когда поймет, что операция выполнена не с тем элементом листбокса, который он видит выделенным, а непонятно с каким.


 
312kbps   (2007-12-20 16:13) [5]

тогда так, чтоб при вызове меню данная строка над которой вызвано меню выделялась

просто в этом меню отображаются дальнейшие действия над данной строкой )

!?


 
{RASkov} ©   (2007-12-20 18:51) [6]

> [5] 312kbps   (20.12.07 16:13)

Высота строк в листбоксе у всех одинаковая?
Если да то вот так попробуй:
procedure TForm1.ListBox1ContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean);
begin
 ListBox1.ItemIndex:=ListBox1.TopIndex+(MousePos.Y div ListBox1.ItemHeight);
 if ListBox1.ItemIndex<0 then Exit;
 //Caption:=ListBox1.Items[ListBox1.ItemIndex];
end;


 
Palladin ©   (2007-12-20 19:07) [7]


> [6] {RASkov} ©   (20.12.07 18:51)

что то как то это все ректально :)

procedure TForm1.ListBox1ContextPopup(Sender: TObject; MousePos: TPoint;
 var Handled: Boolean);
Var
n:Integer;
begin
n:=TListBox(Sender).ItemAtPos(MousePos,True);
If n<>-1 Then TListBox(Sender).ItemIndex:=n;
end;


 
{RASkov} ©   (2007-12-20 21:30) [8]

> [7] Palladin ©   (20.12.07 19:07)
> что то как то это все ректально :)

ступил :(
:) бывает



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
2-1198155687
Stepper
2007-12-20 16:01
2008.01.20
Как в Delphi указать путь компиляции проекта? Типа: С:/Executable


15-1197639448
Андрей Пл
2007-12-14 16:37
2008.01.20
Дайте пожалуйста ссылки по использованию QuickReport


15-1197885385
ыы
2007-12-17 12:56
2008.01.20
Oracle 10g, установка


1-1192976166
Farel
2007-10-21 18:16
2008.01.20
Blob поля


15-1197655294
TUser
2007-12-14 21:01
2008.01.20
Привезли комп




   Наверх