Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Внизповерх всех окон Найти похожие ветки
← →
Grinder © (2004-02-02 13:49) [0]мастера, может кто подскажет, как для неглавного окна сделать так, чтобы в системе оно было поверх всех?
← →
Игорь Шевченко © (2004-02-02 14:06) [1]Parent"ом ему назначить HWND_Desktop и SetWindowPos (YourHandle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE);
Окно должно иметь стиль WS_POPUP
← →
grinder © (2004-02-02 18:58) [2]а вызывать его что-ли по таймеру?
Я написал такую процедурку
// Окно поверъ других
procedure OnTop(Form: Thandle; const ShowOnTop: Boolean);
var
Where: HWnd;
begin
if ShowOnTop then begin
Where := HWND_TOPMOST;
SetParent(form, HWND_Desktop);
end
else
Where := HWND_NOTOPMOST;
SetWindowPos(Form, Where, 0, 0, 0, 0,
SWP_NOACTIVATE or SWP_NOMOVE or
SWP_NOSIZE or SWP_NOSENDCHANGING);
BringWindowToTop(Where);
end;
но как только создаю ещё одно окно, то это свойство приходится снова вызывать.
← →
DVM © (2004-02-02 19:05) [3]
> но как только создаю ещё одно окно, то это свойство приходится
> снова вызывать.
По таймеру, по таймеру. Причем выше будет тот, чей таймер чаще. А еще выше будут игры под DirectX.
А как ты думаешь, что будет если запустить две копии твой программы? :)
← →
Grinder © (2004-02-03 00:20) [4]2 копии не запустешь. Нельзя. А по таймеру моргание идёт нехорошее. Вот что плохо. Пробовал на Application.OnIdle. Тоже.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.037 c