Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.20;
Скачать: CL | DM;

Вниз

HotKey in CONSOLE   Найти похожие ветки 

 
Jay1982 ©   (2005-02-02 10:15) [0]

Могу назначить хоткей на консольное приложение, а как его теперь обрабатывать? DefWindowProc что-то не рабоает.
И ещё есть-ли аналог паскалевской ClsScr?


 
Jay1982 ©   (2005-02-02 11:33) [1]

Второй вопрос решён, если кому надо, держите

procedure CLS;
var
 sbi: TConsoleScreenBufferInfo;
 num, num_res: LongWord;
 cpos: _COORD;
begin
 GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), sbi);
 cpos.X := 0;
 cpos.Y := 0;
 num := sbi.dwSize.X * sbi.dwSize.Y;
 FillConsoleOutputCharacter(c_handle, " ", num, cpos, num_res);
 SetConsoleCursorPosition(c_handle, cpos)
end;

Первый всё ещё остается открытым :(


 
Jay1982 ©   (2005-02-02 11:49) [2]

Да забыл, вот ещё:

 c_handle := GetStdHandle(STD_OUTPUT_HANDLE);


 
palva ©   (2005-02-02 13:34) [3]

По поводу обработки hotkey.

Я понимаю так, что в консольном приложении нет главного окна и нет цикла обработки сообщений, так что надо делать всё вручную, так, как это когда-то программировалось под дос. Получайте ввод с клавиатуры только через написанную вами функцию, где проверяйте код горячей клавиши. Стандартными функциями ввода типа Read тогда уже пользоваться нельзя.


 
Jay1982 ©   (2005-02-02 14:12) [4]

palva ©   (02.02.05 13:34) [3]
 Приложение как раз имеет главную форму, а найти её можно так: GetForegroundWindow, при активации приложения. И все WM_* события для него акутуальны.
 Можно конечно просто проверять ввод, ну а если приложение не активно, то что делать?
 Тут надо всё-таки как-то обрабатывать WM_HOTKEY :(

 Ещё предложения



Страницы: 1 вся ветка

Текущий архив: 2005.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.055 c
14-1106833107
wl
2005-01-27 16:38
2005.02.20
огромная просьба помочь...


9-1100785213
Вась-Вась
2004-11-18 16:40
2005.02.20
Проблемы с заголовочными файлами DirectX SDK!


1-1107862945
AlexTregubov
2005-02-08 14:42
2005.02.20
Как быстро уменьшить bitmap?


3-1106539391
vasili
2005-01-24 07:03
2005.02.20
Ошибка в длл


1-1107271810
_ZeKa
2005-02-01 18:30
2005.02.20
Вывод на принтер картинки, хранящейся в TList