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

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

← →
Elysium ©   (2004-05-19 15:47) [0]

Недавно был вопрос на тему, как заставить окно быть всегда наверху (и в играх тоже - например часы или АдминКлуб какой-нибудь и т.п.), ответов было много:

1.FormStyle:=fsStayOnTop
2. SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE) по частому таймеру или Deactivate
3. рисовать прямо на экран
GetDC(0);
Rectange(...

4. Использовать отдельный поток в REALTIME
5. Мне еще предлагали использовать
SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);

НО и еще раз НО, все эти способы действительно помогают, но окно - очень сильно моргает, особенно в динамичных играх, а нужно, чтобы человек играл, окно висело сверху, и при использовании (как Роман предложил) REALTIME или частого таймера игра не тормозила. Вот. Кто поможет, а?


← →
DVM   (2004-05-19 17:19) [1]


> НО и еще раз НО, все эти способы действительно помогают,
> но окно - очень сильно моргает, особенно в динамичных играх,
> а нужно, чтобы человек играл, окно висело сверху, и при
> использовании (как Роман предложил) REALTIME или частого
> таймера игра не тормозила. Вот. Кто поможет, а?

Невозможно ИМХО. Только через специфические фичи в драйверах некоторых видеокарт (например от Nvidia, так же как ее лого). Но во-первых, не ясно как это сделать, во-вторых, есть не у всех видеокарт.
Я не видел ни одной программы, где бы такое было реализовано.


← →
NAlexey ©   (2004-05-20 08:52) [2]

>DVM   (19.05.04 17:19) [1]
Лень конечно проводить эксперемент, но если отлавливать событие окна WM_WINDOWPOSCHANGING, смотреть, если его переводят ниже в Z последовательности, переводить на верх, разве не сработает?


← →
Elysium ©   (2004-05-20 09:58) [3]

Кстати, а можно ли такой вариант сделать - игры рисуются (допустим) в DirectX, видеокарта обновляет изображение с некоторой частотой FPS. Так возможно ли как-нибудь отлавливать каждый кадрик - и рисовать на нем, что хочу, а потом  отправлять на монитор (ну да сам понимаю, что что-то не то пишу - а вдруг?). Или например рисовать прямо в память видеокарты (ну как в добром BorlandPascal в адреса выше &A000 :-))), ну, какие идея (или пошлете меня к черту?)?



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

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



Память: 0.46 MB
Время: 0.021 c
14-1085652153
Глеб
2004-05-27 14:02
2004.06.27
Жёсткий диск


1-1086845576
sergt
2004-06-10 09:32
2004.06.27
DateTimePicker


14-1086892505
GanibalLector
2004-06-10 22:35
2004.06.27
][APKОВ !!!ту-ту-ту-тууу!!!туууу-тууууу!!!!


1-1086951849
Ivolg
2004-06-11 15:04
2004.06.27
Копирование и Удаление


1-1086678272
Глеб
2004-06-08 11:04
2004.06.27
Image - глюк




   Наверх