Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Вопрос по использованию клавиши Alt

Автор: 1147 9.02.2010 21:43

Такая ситуация: при использовании клавиши Alt для выполнения определенного действия:

if (ssAlt in Shift)  then dbedit1.setfocus;
курсор помещается в dbedit1, но не мигает как обычно, и при вводе текста в dbedit сначала раздается звук, только после этого возможен ввод текста.
Но если я использую для этого любую другую клавишу, Shift, Control и тд, такой проблемы не возникает. Курсор сразу помещается в dbedit мигает, как положено. Почему именно с альтом так получается? и можно ли сделать чтобы он нормально работал?


Автор: volvo 9.02.2010 22:16

Цитата
можно ли сделать чтобы он нормально работал?
Можно...
  if ssAlt in Shift then
begin
Key := 0; // <--- Этого не было сделано
DBEdit1.SetFocus;
end;

Автор: 1147 9.02.2010 22:44

А почему для других клавиш этого не требовалось?

Автор: volvo 9.02.2010 22:48

Потому что Alt - клавиша особая. Начиная с того, что при нажатии Alt Windows автоматически перебрасывает фокус в главное меню приложения, а при нажатиях Ctrl или Shift этого не происходит...