Форум: "Основная";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];
ВнизПомогите получить ListBox.ItemIndex на onMouseMove Найти похожие ветки
← →
Gogol (2003-06-23 12:35) [0]или каким-либо другим способом. Можно дать ссылку, т.е. ткнуть носом. Спасибо
← →
Семен Сорокин (2003-06-23 12:37) [1]TListBox(Sender).ItemIndex
← →
Skier (2003-06-23 12:38) [2]А что Sender и кастинг уже отменили ? :)
← →
Gogol (2003-06-23 12:41) [3]2 Семен Сорокин © (23.06.03 12:37)
2 Skier © (23.06.03 12:38)
Спасибо
← →
Zz_ (2003-06-23 12:44) [4]LB_ITEMFROMPOINT
← →
Palladin (2003-06-23 13:00) [5]
> Zz_
Извините :) я не много не вкурил.
Я понимаю, Вы внимательно ознакомились с предыдущими постами и, при всей Вашей мудрости, обоснованно решили, что ни один из них не отражает реальности! Да же сам вопрошающий в силу своей, с Вашей точки зрения, недальновидности, этого не осознал. Это все прекрасно.
Но все таки позволю себе сделать Вам замечание. API это прекрасно, это позволяет уменьшать программы в размере, это позволяет показывать свой код друзьям и наслаждатся их вопросами и возгласами "Ну ты крут? А что это? А зачем?"... Но многие API функции в условиях написания программ с использованием VCL теряют свой шарм. Ибо очень часто тоже самое можно реализовать и не посылая сообщение. То есть всего лишь вызвать метод ItemAtPos у класса TListBox(TCustomListBox), попробуйте, я уверен Вам понравится, а завидя строчку API с опросом ListBox у товарища, Вы сможете честно его опустить, указав ему, что делается это гораздо проще и приятней, не нарушая традиций VCL.
← →
Zz_ (2003-06-23 13:04) [6]>>Palladin © (23.06.03 13:00)
Гы
← →
Gogol (2003-06-23 13:56) [7]Видимо Palladin © (23.06.03 13:00)слишком прав. Я не смог реализовать предложений. Скорее всего чего-то крупно недопонимаю.
Заполните, если это не особо затруднит:
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
...
end;
← →
VMcL (2003-06-23 14:01) [8]procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
> Семен Сорокин © (23.06.03 12:37)<
end;
← →
Palladin (2003-06-23 14:01) [9]:)) а чем тебе ее заполнить то? :))) комментариями чтоли?
← →
VMcL (2003-06-23 14:04) [10]>Gogol (23.06.03 13:56)
VMcL © (23.06.03 14:01) --- Sorry, не то.
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
TListBox(Sender).ItemAtPos(Point(X, Y), ...)
end;
← →
Gogol (2003-06-23 14:07) [11]Прошу извинить, но изначально мне неоходимо получить ItemIndex, на мете расположения мыши в ListBox-е
← →
Palladin (2003-06-23 14:13) [12]ItemIndex - это текущий выделеный элемент, он никак не завист от места расположения
Номер пункта над которым в данный момент находится курсор
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
(Sender as TListBox).ItemIndex:=(Sender as TListBox).ItemAtPos(Pointer(x,y),true);
end;
← →
Skier (2003-06-23 14:15) [13]procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
with Sender as TListBox do ItemIndex := ItemAtPos(Point(x,y), True);
end;
← →
Gogol (2003-06-23 14:32) [14]Спасибо всем. С текущим выделенным элементом у меня проблем не возникает. Я хотел реализовать соответствующие Hint-ты при движении мыши над любой строкой ListBox. Судя по высказывания м(без выделения строки) реализовать это невозможно, а жаль
← →
Palladin (2003-06-23 14:34) [15]хм, это судя по чьим высказываниям ты так решил?
← →
Семен Сорокин (2003-06-23 14:34) [16]Gogol (23.06.03 14:32)
ты не прав, реализовать можно и без выделения
← →
Skier (2003-06-23 14:36) [17]>Gogol (23.06.03 14:32)
Это Вы, батенька, сильно поторопились...:)
← →
Gogol (2003-06-23 14:47) [18]По высказыванию "ItemIndex - это текущий выделеный элемент"
← →
Palladin (2003-06-23 14:50) [19]нет слов... одни эмоции...
← →
Skier (2003-06-23 14:51) [20]procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
with Sender as TListBox do Hint := Items[ItemAtPos(Point(x,y), True)];
end;
← →
Palladin (2003-06-23 14:51) [21]тебе привели две реализации как получить номер пункта при возникновении события OnMouseMove и ты нихрена, извинясь за выражение, не просек тему...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.019 c