Главная страница
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.47 MB
Время: 0.057 c
3-1082634420
Frozzen
2004-04-22 15:47
2004.05.16
Позиция курсора в DBGrid


1-1082988932
TankMan
2004-04-26 18:15
2004.05.16
Ну не могу я разобратся с TImageList... :(


9-1073153840
New user
2004-01-03 21:17
2004.05.16
Импорт моделей из Poser


1-1083131793
Rext
2004-04-28 09:56
2004.05.16
Функции из dll


7-1080883044
СержК
2004-04-02 09:17
2004.05.16
Как програмно поменять системное время