Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.19;
Скачать: CL | DM;

Вниз

Можно ли в ListBox узнать по какой букве в строке был клик   Найти похожие ветки 

 
ListBox   (2006-02-04 00:26) [0]

или по какому слову в строке?


 
vidiv ©   (2006-02-04 12:24) [1]

Без изврата - врядли.


 
vidiv ©   (2006-02-04 12:56) [2]

Вот пример изврата:

procedure TForm1.ListBox1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
var ir: TRect;
   i,j:integer;
   s:string;
   ListBox:TListBox;
begin
 ListBox := Sender as TListBox;
 j := ListBox.ItemAtPos(Point(X, Y), True);
 if j>=0 then begin
   ListBox.Canvas.Font := ListBox.Font;
   ir := ListBox.ItemRect(j);
   x := x - ir.Left - 2;
   s := ListBox.Items[j];
   j := 0;

   for i:=1 to length(s) do begin
     if ListBox.Canvas.TextWidth(copy(s, 1, i)) > x then begin
         j := i;
         break
       end;
   end;
   if j > 0 then begin
     showmessage("Вы кликнули по букве номер "+inttostr(j));
   end else begin
     showmessage("Вы не попали по букве");
   end;
 end;
end;


 
Gero ©   (2006-02-04 12:59) [3]

Можно, но в общем случае довольно сложно.


 
ListBox   (2006-02-04 20:35) [4]

Спасибо!



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

Текущий архив: 2006.02.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
15-1138362588
DillerXX
2006-01-27 14:49
2006.02.19
Ноутбук - что посоветуете счастливому обладателю? :)


15-1138290638
Andy BitOff
2006-01-26 18:50
2006.02.19
Установка GDIplus под D2005 - проблемы.


15-1138237006
vidiv
2006-01-26 03:56
2006.02.19
Спам...


4-1133856137
Lex_!
2005-12-06 11:02
2006.02.19
Выполнение консольного приложения и вывод результатов в МЕМО поле


15-1138597218
begin...end
2006-01-30 08:00
2006.02.19
С Днём рождения! 30 января