Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 23.10.2010, 09:45
Ama Ama вне форума
Активный
 
Регистрация: 15.07.2008
Сообщения: 260
Репутация: 23
По умолчанию событие OnKeyDown

Доброе время суток, господа. Создаю форму кидаю эдиты.....суть такова: надо чтобы в эдиты записывались комбинации клавиш нажатые в поле......думал думал.....обработал событие OnKeyDown...вот код:
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
 var s: string;
begin
  if (not (Sender is TLabeledEdit)) or ((Sender is TEdit) and
    ((Sender as TEdit).Name = TmpEdit.Name)) then
  begin
   TmpEdit.Text:= '';
   exit;
  end;

 s:= '';
 s:= ShortCutToText(ShortCut(Key, Shift));
 if (Sender as TLabeledEdit).Text = s then exit;
 ShortText:= s;
 (Sender as TLabeledEdit).Text:= s;
end;
Не обращайте внимание что у меня FormKeyDown ее я назначил общую для всех эдитов. Ну вот вроде бы работает, но не совсем так как надо, а именно: при нажатии на Ctrl в эдит почему-то выводиться сочетание Ctrl+Ctrl..... почему????? ведь клавишу одну нажал.......
и вообще почему-то не совсем корректно выдает сочетания клавиш......почему-то некоторые клавиши дублирует в названии...мож кто поможет.....а еще как мне запретить вводи символов в эдит.....чтобы даже не отображался при вводе......хочу чтоб там были тока сочетания клавиш. ShortCutToText(ShortCut(Key, Shift)) - эти процы я взял с Menu.pas, который есть в самой дельфе
__________________
APPLICATION.TERMINATOR

Последний раз редактировалось Ama, 24.10.2010 в 11:51.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:18.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025