Вниз
Скачать: CL | DM;

Окно поверх всего и...   Найти похожие ветки 

 
Pete ©   (2002-02-05 15:54) [0]

Вообщем нужно, что-бы окно ни какими способами не сворачивалось,
не становилось неактивным и т.д.
Вся проблема в том, что прога работает под DirectDraw

Отключаю ctrl+alt+del: SystemParametersInfo(PI_SCREENSAVERRUNNING,1,@old,0);
а вот сворачивание не могу отключить, alt+space все равно сворачивает.


 
AlexRush   (2002-02-05 17:32) [1]

Чтобы форма была всегда поверх всех окон:
В обьявлении класса формы переопределяешь виртуальный метод TWinControl CreateParams >>

procedure CreateParams(var Params:TCreateParams);override;

Его реализация:
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle:=Params.ExStyle or WS_EX_TOPMOST;
end;

Чтобы отключать Alt+Tab, Alt+Space и еже с ними, используем механизм горячих клавиш Виндовс:

CONST
hhkAtlTab =101; // любые значения от от 0 до 49151
hhkAtlSpace = 102;
.......
// на создание формы
procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(Self.Handle,hhkAtlSpace,MOD_ALT,VK_SPACE);
RegisterHotKey(Self.Handle,hhkAtlTab,MOD_ALT,VK_TAB);
end;

// Чтобы убрать:
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnregisterHotKey(Self.Handle,hhkAtlTab);
UnregisterHotKey(Self.Handle,hhkAtlSpace);
end;

Проверено, работает.






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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
7-22865
MystiX
2002-01-08 12:25
2002.04.08
CD и Delphi


14-22823
AceR
2002-02-25 19:38
2002.04.08
Кодировка в Paradox


1-22676
DikobraZ
2002-03-28 15:08
2002.04.08
Новые компоненты закрывают старые...


6-22782
Hardward
2002-01-23 19:47
2002.04.08
Не проходит IP пакет


3-22559
Mikeee
2002-03-14 09:49
2002.04.08
Общий титул на несколько колонок в DBGridEh




   Наверх