RxDBGrid & DBGridMouseDown

Модераторы: alexs, Модераторы

RxDBGrid & DBGridMouseDown

Сообщение kit » 09.11.2016 13:49:34

Как в событии DBGridMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); определить что я кликнул на текущей записи?
kit
постоялец
 
Сообщения: 156
Зарегистрирован: 29.09.2016 09:39:07

Re: RxDBGrid & DBGridMouseDown

Сообщение alexs » 09.11.2016 19:36:18

ну вообще-то курсор должен сместиться на запись, по которой клик был
А так - можно расчитать. Только для этого надо получать доступ к приватным методам.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: RxDBGrid & DBGridMouseDown

Сообщение kit » 19.12.2016 13:01:15

Как узнать что я кликнул ниже последней строки?
kit
постоялец
 
Сообщения: 156
Зарегистрирован: 29.09.2016 09:39:07

Re: RxDBGrid & DBGridMouseDown

Сообщение alexs » 19.12.2016 15:41:15

Посмотреть - сколько записей в наборе
Поделить высоту грида на высоту строки
Сравнить эти 2 значения
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: RxDBGrid & DBGridMouseDown

Сообщение kit » 20.12.2016 08:45:50

var
Pt: TPoint;
begin
Pt := DBGrid.ScreenToClient(Mouse.CursorPos);
if (Pt.Y > (TCustomDrawGrid(DBGrid).VisibleRowCount + 2) * DBGrid.DefaultRowHeight) then
kit
постоялец
 
Сообщения: 156
Зарегистрирован: 29.09.2016 09:39:07

Re: RxDBGrid & DBGridMouseDown

Сообщение alexs » 20.12.2016 09:25:04

На самом деле надо ещё учесть особо извращённый случай - когда высота строк может быть различна (например - заголовок из 2-х или более строк)
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: RxDBGrid & DBGridMouseDown

Сообщение kit » 21.12.2016 10:15:33

У меня всегда заголовок из двух строк
kit
постоялец
 
Сообщения: 156
Зарегистрирован: 29.09.2016 09:39:07


Вернуться в RxLib

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru