Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

/ Помогите понять Msg.Result:=1 / [D7, WinXP]


Flex ©   (2003-05-31 14:54:00) 

В одном из примеров встретил следующую запись:

procedure TForm1.CMDialogKey(var Msg: TCMDialogKey);
begin
if (Msg.CharCode = VK_RETURN) then
begin
Perform (CM_DialogKey, VK_TAB, 0);
Msg.Result := 1; end
else
inherited;
end;


Смутило Msg.Result := 1.
В пояснении сказано, что это предотвращает дальнейшую обработку нажатия
клавиши Enter.

Поэкспериментировав, я не увидел разницы если эта строка присутствует или если её вовсе нет.

Так для чего она действительно нужна?

Заранее благодарен.


Kest   (2003-05-31 22:31:00) [1]

Насколько я понял, если понял вообще, это процедура перехода по Enter как по TAB. Типа жмешь Enter, а курсор переходит в след. Edit или т.п. И то что тебя смутило скорее всего обычная подстраховка.

Вот что у меня.


procedure TFormMain.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (Key = #13) then
begin Key:=#0;
FormMain.Perform(WM_NEXTDLGCTL,0,0)
end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо