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

Вниз

DBGrid и двойной клик на заголовке!   Найти похожие ветки 

 
svv   (2004-04-15 18:03) [0]

Есть DBGrid!
реализовано открывание окна редактирования данных по двойному клику на строке таблицы, а также сортировка по столбцам (кликом по заголовку столбца)

недостаток "чайники" делают двойной клик по заголовку и в результате открывают на редактирование первую отсортированную запись таблицы.

как запретить двойной клик на заголовке и разрешить его на остальных ячейках?


 
Johnmen ©   (2004-04-15 18:07) [1]

Анализирую TShiftState на ssDouble


 
svv   (2004-04-15 18:10) [2]

а поподробнее можно?


 
ZrenBy ©   (2004-04-15 18:15) [3]

1.
Поджигай или туши флажок на
OnTitleClick
OnCellClick

2.
OnMouseDown(... X, Y: Integer);
rect = CellRect(0,0);


 
KSergey ©   (2004-04-16 08:28) [4]

Провел сейчас экспериментик
Как я понимаю - двойной клик отлавливаем в событии OnDblClick DBGrid"а

Тогда могу предложить такой код (проверял):

type TDBGridFreind = class (TDBGrid);

procedure TMainForm.DBGrid1DblClick(Sender: TObject);
var
 i: Integer;
 pt: TPoint;
begin
 pt := Mouse.CursorPos;
 pt := DBGrid1.ScreenToClient (pt);
 if pt.y > TDBGridFreind(DBGrid1).RowHeights[0] then   // если мышь ниже заголовка
   ShowMessage ("Двойной клик по ячейкам")
 else
   ShowMessage ("Двойной клик по заголовку")
end;


Наличие заголовка не проверяется - считаем, что он гарантированно есть.
По хорошему, конечно бы, проверять что клик в в область ячеек попадает (например, если строк в гриде всего 2 и кликаем ниже строк с данными)
Но тогда действительно проще уж пересесть на MouseDown и > [1] Johnmen ©   (15.04.04 18:07)


 
svv   (2004-04-16 13:47) [5]

Большое спасибо!
Все отлично сработало!
PS поступил по примеру от KSergey.



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

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

Наверх




Память: 0.48 MB
Время: 0.032 c
3-1082107204
Litva
2004-04-16 13:20
2004.05.16
DBGRID...


1-1083318130
siriusP
2004-04-30 13:42
2004.05.16
Как запретить класть на TPanel компоненты?


3-1082379567
European
2004-04-19 16:59
2004.05.16
Рекурсивный иерархический SQL-запрос


11-1069409816
=Sniper=
2003-11-21 13:16
2004.05.16
Как из ActionList вытащить стандартные Action ны?


3-1082349604
Slavik_v
2004-04-19 08:40
2004.05.16
Суммирование записей с одиниковым значением в поле Field