мысли вслух про TAction

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

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

Ответить
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

мысли вслух про TAction

Сообщение Attid »

запретил на гриде ввод в некоторые колонки ввод с клавиатуры

Код: Выделить всё

procedure TfmDesk.gMainKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if ((gMain.Col in [1,3,4,5]) ) then //      ctrl\alt\*
  begin
    if (Key = 32) then Key := 0;
    if (Key > 40)  then Key := 0;
  end;   


окозалось что перестали работать акшены по хоткеям :(
не очень понимаю почему они получают коды уже после того как получают контролы на форме , но из ситуации я выкртился усложняя процедуру отбора кодов клавишь, просто решил высказаться . .

ЗЫ делал все под линуксом, может под вендой по другому
Yogrik
постоялец
Сообщения: 116
Зарегистрирован: 22.03.2006 23:41:48

Сообщение Yogrik »

ИМХО для запрета ввода лучше использовать KeyPress
GrayEddy
постоялец
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Сообщение GrayEddy »

Вообще-то, по номерам колонок не стоит ориентироваться. Лучше по именам, ибо юзер может переставить 1-ую и 2-ую колонку.
Аватара пользователя
shade
энтузиаст
Сообщения: 879
Зарегистрирован: 21.02.2006 19:15:48
Откуда: http://shamangrad.net/
Контактная информация:

Сообщение shade »

Attid писал(а):не очень понимаю почему они получают коды уже после того как получают контролы на форме

TForm.KeyPreview не пробовал устанавливать в true?
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

shade

TForm.KeyPreview не пробовал устанавливать в true?


пробывал не помогает :) а что должно было произойти ?

GrayEddy
у них мышки нет, так что не смогут :) по номерам бытрее орентироваться, а возможность смены столбцов я им не дам.


Yogrik
с KeyPress таже катовася если запретить в эти столбцы все то и акшены не будут работать, а основной код уже был в этой процедуре поэтому там и дописал запреты.
Yogrik
постоялец
Сообщения: 116
Зарегистрирован: 22.03.2006 23:41:48

Сообщение Yogrik »

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