Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
1-1083620679
spogi
2004-05-04 01:44
2004.05.16
TLCDNumber


1-1083315877
Relaxxx
2004-04-30 13:04
2004.05.16
Как с строки удалить все пробелы???


1-1083138138
Романов Р.В.
2004-04-28 11:42
2004.05.16
Помогите оптимизировать код


1-1082999892
Lich
2004-04-26 21:18
2004.05.16
Установленные хуки


6-1080487828
iu2320
2004-03-28 19:30
2004.05.16
Shared resources




   Наверх