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

Вниз

StringGrid и MouseToCell   Найти похожие ветки 

 
John Doe ©   (2005-11-02 22:39) [0]

Добрый вечер.
Дело такое:
У меня имеется StringGrid,и когда я нажимаю на какую либо из его ячеек,мне надо чтоб выдавалось значение строки и столбца этой ячейки.

В обработчике OnMouseMove,есть переменные X,Y.
Которые затем я использую в MouseCoord,тем самым получая координаты столбца и строки.

Но в OnDbClick нет X и Y.
Потому приходится использовать процедуру GetCursorPos,но в этом случае он мне не выдает нужный рез-ат.

PS.Использовал и MouseToCell,все равно выдает,-1.

Вот код:

procedure TForm1.StringGrid1DblClick(Sender: TObject);
var a: TPoint;
   b: TGridCoord;
begin
 GetCursorPos(a);
 b:=StringGrid1.MouseCoord(a.X,a.Y);
 ShowMessage(IntToStr(b.x));
 ShowMessage(IntToStr(b.y));
end;


 
jack128 ©   (2005-11-02 23:11) [1]

procedure TForm1.StringGrid1DblClick(Sender: TObject);
var
 p: TPoint;
 Col, Row: Integer;
begin
 Win32Check(GetCursorPos(P));
 P := (Sender as TStringGrid).ScreenToClient(P); //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 TStringGrid(Sender).MouseToCell(P.X, P.Y, Col, Row);
 Caption := Format("%d; %d", [Col, Row])
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.039 c
4-1127313146
Still Swamp
2005-09-21 18:32
2005.11.27
Как сделать окошко которое не будет на себя переключать фокус


4-1127742827
Cosinus
2005-09-26 17:53
2005.11.27
Обращение к системному сервису


2-1131106411
12next
2005-11-04 15:13
2005.11.27
Заменить процедуру события OnClick


2-1131452979
начиннающий
2005-11-08 15:29
2005.11.27
adoconnection


14-1131122018
Дмитрий_05
2005-11-04 19:33
2005.11.27
Label определенной длиной а текст переносился по строкам