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

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

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

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

Сообщение Attid » 04.02.2007 11:33:11

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

Код: Выделить всё
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;   


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

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

Сообщение Yogrik » 04.02.2007 14:59:59

ИМХО для запрета ввода лучше использовать KeyPress
Yogrik
постоялец
 
Сообщения: 116
Зарегистрирован: 23.03.2006 00:41:48

Сообщение GrayEddy » 04.02.2007 15:40:52

Вообще-то, по номерам колонок не стоит ориентироваться. Лучше по именам, ибо юзер может переставить 1-ую и 2-ую колонку.
GrayEddy
постоялец
 
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Сообщение shade » 04.02.2007 19:48:27

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

TForm.KeyPreview не пробовал устанавливать в true?
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение Attid » 04.02.2007 22:42:35

shade

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


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

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


Yogrik
с KeyPress таже катовася если запретить в эти столбцы все то и акшены не будут работать, а основной код уже был в этой процедуре поэтому там и дописал запреты.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Yogrik » 10.02.2007 15:09:46

Странно, набросал тестовый примерчик у меня работало(когда отвечал первый раз).....
Надо будет еще раз попробовать, когда время будет :(
Yogrik
постоялец
 
Сообщения: 116
Зарегистрирован: 23.03.2006 00:41:48


Вернуться в Lazarus

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

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

Рейтинг@Mail.ru