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

Вниз

Отправка сетке соодщения WM_MOUSEDOWN   Найти похожие ветки 

 
TStas ©   (2008-03-22 16:49) [0]

Сетка - TstringGrid. Нужно ей отправить сообщение, что на ячейке ACol, ARow, был щелчок.
Rect := StringGrid1.CellRect(ACol, ARow); //Получил прямоугольник сетки.
x := Rect.Left +1; //Получил иксовую координаты "мыши"
y := Rect.Top + 1; //Получил игриковую координату "мыши"
А вот как теперь в wParam и lParam засунить эти координаты и, главное, что "щелчок" был именно левой клавишей "мыши"?
Вот и весь вопрос.


 
{RASkov} ©   (2008-03-22 17:31) [1]

> [0] TStas ©   (22.03.08 16:49)

> соодщения WM_MOUSEDOWN

А что это за сообщение такое? Я что-то не нашел ни в справке, ни в стандартных исходниках...
Может ты путаешь и тебе нужны какие нибудь из этих:
 WM_MOUSEFIRST       = $0200;
 .............
 WM_MOUSELAST        = $020A;
?
Есть WM_хBUTTONDOW, где х - это L(левая), R(правая) и M(средняя) кнопки мыши....


 
Leonid Troyanovsky ©   (2008-03-22 18:39) [2]


> TStas ©   (22.03.08 16:49)  

> Сетка - TstringGrid. Нужно ей отправить сообщение, что на
> ячейке ACol, ARow, был щелчок.

PostMessage(StringGrid1.Handle, WM_LBUTTONDOWN, 0, MakeLParam(x, y)).

Только, непонятно нах. И кто будет WM_LBUTTONUP делать.

--
Regards, LVT.


 
Германн ©   (2008-03-23 01:05) [3]


> Leonid Troyanovsky ©   (22.03.08 18:39) [2]
>
>
> > TStas ©   (22.03.08 16:49)  
>
> > Сетка - TstringGrid. Нужно ей отправить сообщение, что
> на
> > ячейке ACol, ARow, был щелчок.
>
> PostMessage(StringGrid1.Handle, WM_LBUTTONDOWN, 0, MakeLParam(x,
>  y)).
>
> Только, непонятно нах. И кто будет WM_LBUTTONUP делать.
>

Мне тоже непонятно "нах". Может автор объяснит?
Но вот интересное замечено было:
Обработчик OnSelectCell вызывается дважды в таком коде:
 with StringGrid1 do begin
   Col:=2;
   Row:=2;
 end;


 
Leonid Troyanovsky ©   (2008-03-23 11:00) [4]


> Германн ©   (23.03.08 01:05) [3]

> Обработчик OnSelectCell вызывается дважды в таком коде:


type
 TCrackGrid = class(TStringGrid);
..
 TCrackGrid(StringGrid1).FocusCell(ACol, ARow,True);

--
Regards, LVT.


 
TStas ©   (2008-03-24 22:54) [5]

Да я уже сам разобрался. Отправлять его нужно затем, чтобы сетка узнала, что надо выделять ячейки, Up она и сама чудесно получит. Ситуация стандартная: на ячейку сетки подкладывается контрол в OnDrawCell, на нужно, чтобы можно было выделять диапазон.



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
2-1228633202
@!!ex
2008-12-07 10:00
2009.01.18
Узнать ProcessHandle по HWND окна.


15-1226873370
wl
2008-11-17 01:09
2009.01.18
сниму коннату в москве или области


15-1225760423
borisich
2008-11-04 04:00
2009.01.18
А меня дочка родилась !!!!!!!!!!!


2-1228307698
NEWSER
2008-12-03 15:34
2009.01.18
Как в диалоге выбора каталога открыть последний выбранный?


2-1228217502
and123
2008-12-02 14:31
2009.01.18
Работа с TImage