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

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

Закрыть по Ctrl-Enter форму с фокусированным Memo


IGray ©   (2005-08-17 14:13:00) 

Использую следующий простой код:

procedure TformRemark.FormKeyDown(Sender: TObject;
            var Key: Word; Shift: TShiftState);
begin
 if (Shift = [ssCtrl]) and (Key = vk_RETURN) then begin
   Key := 0;
   btnOK.Click;
 end;
end;

Форма-то закрывается, но если в Memo курсор находится внутри cтроки то строка ещё и разбивается на две, т.е. Memo отрабатывает Enter !
Как правильнее избежать этого, посоветуйте плииз..!


Leonid Troyanovsky   (2005-08-17 16:19:00) [1]


> з. танька   (17.08.05 15:47) [4]


> а где про них почитать можно?

Наверное, в каком-нить дремучем мануале к паскалю или досу.
На самом деле знать их не очень надо.
Т.е., многие знают ^C, ^V, ^X, кто-то помнит ^G,
ну а если нужно значение констант, то можно их определить,
например:

const
 CRLF = #13#10;

> гм и шо такое табулятор? :)

Были такие устройства для пробивки перфокарт.
Одна перфокарта - одна строка для какого-нибуть FORTRAN.

--
Regards, LVT.


з. танька   (2005-08-17 15:47:00) [2]

а где про них почитать можно?
гм и шо такое табулятор? :)


Leonid Troyanovsky   (2005-08-17 15:39:00) [3]


> з. танька   (17.08.05 15:29) [2]
> а это что за зверь ^J? первый раз такое вижу 8|


Эх, молодо-зелено..
^J = #10 {LF}, т.е. Ctrl-J, управляющие коды такие были,
на табуляторе ;)

--
Regards, LVT.


з. танька   (2005-08-17 15:29:00) [4]

а это что за зверь ^J? первый раз такое вижу 8|


Leonid Troyanovsky   (2005-08-17 15:19:00) [5]


> IGray   (17.08.05 14:13)  

> Как правильнее избежать этого, посоветуйте плииз..!


Вместо OnKeyDown использовать OnKeyPress:


procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
 if Key = ^J {LF} then
   begin
     Key := #0;
     BtnOK.Click;
   end;
end;


--
Regards, LVT.


Наверх

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