Редактировать данные только по левому щелчку в TDBGrid

Вопросы программирования и использования среды Lazarus.

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

Редактировать данные только по левому щелчку в TDBGrid

Сообщение artem78 » 22.09.2020 17:05:47

Здравствуйте!

На форме имеется компонент TDBGrid работающий с БД. Разрешено редактирование данных, включены флаги AutoEdit и Options=dgEditing. Меня не устраивает то, что режим редактирования включается при щелчке любой кнопкой мыши (правой, левой и даже колёсиком).

Как сделать, чтобы редактор появлялся только при нажатии левой кнопки? Спасибо.

Все свойства компонента TDBGrid:
Код: Выделить всё
object ItemsGrid: TDBGrid
  Left = 8
  Height = 240
  Top = 16
  Width = 701
  Anchors = [akTop, akLeft, akRight, akBottom]
  AutoFillColumns = True
  Color = clWindow
  Columns = < 
    item
      Title.Caption = 'Наименование в накладной'
      Width = 254
      FieldName = 'name1'
    end 
    item
      Title.Caption = 'Наименование в 1С'
      Width = 254
      FieldName = 'name2'
    end 
    item
      SizePriority = 0
      Title.Caption = 'Кол-во'
      Width = 80
      FieldName = 'amount'
    end 
    item
      Alignment = taCenter
      SizePriority = 0
      Title.Caption = 'В продуктах'
      Width = 80
      FieldName = 'is_product'
    end>
  DataSource = DataSource1
  Options = [dgEditing, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit, dgAnyButtonCanSelect, dgCellEllipsis, dgRowHighlight]
  PopupMenu = ItemsGridPopupMenu
  Scrollbars = ssVertical
  TabOrder = 0
  TitleStyle = tsNative
  OnContextPopup = ItemsGridContextPopup
end
artem78
новенький
 
Сообщения: 43
Зарегистрирован: 09.08.2015 18:52:24

Re: Редактировать данные только по левому щелчку в TDBGrid

Сообщение Снег Север » 23.09.2020 10:56:29

Вообще-то стандартно редактирование включается только по двойному щелчку левой кнопки мыши. Уберите dgAnyButtonCanSelect в настройках и будет вам счастье... :D
А если вам надо непременно редактировать по одиночному левому клику, то вам надо написать свой обработчик события у грида.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2995
Зарегистрирован: 27.11.2007 16:14:47

Re: Редактировать данные только по левому щелчку в TDBGrid

Сообщение artem78 » 23.09.2020 13:51:58

Снег Север писал(а):Уберите dgAnyButtonCanSelect в настройках и будет вам счастье...

Этот флаг я включил, чтобы при вызове контекстного меню выделение перескакивало на строку под местом щелчка мышкой.

Снег Север писал(а):то вам надо написать свой обработчик события у грида.

Попробую.
artem78
новенький
 
Сообщения: 43
Зарегистрирован: 09.08.2015 18:52:24


Вернуться в Lazarus

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

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

Рейтинг@Mail.ru