Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];

Вниз

Определить номер текуще строки в 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 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.038 c
2-1197965944
Washington
2007-12-18 11:19
2008.01.20
Пароль на базу данных MS Access


15-1197464538
em240
2007-12-12 16:02
2008.01.20
Автоматизация установки служб в рамках домена.


4-1182414612
BillyJeans
2007-06-21 12:30
2008.01.20
Передача параметра в Thread


2-1197962651
Бакук
2007-12-18 10:24
2008.01.20
DLL и поток


2-1198056331
Washington
2007-12-19 12:25
2008.01.20
Высота панели задач





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский