Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Форма в Delphi поверх всех окон

Автор: Andrey aka Master
Дата сообщения: 16.08.2003 19:58
Как в Delphi сделать форму поверх всех окон ?
Я ставлю stayontop в formstyle но это мне не подходит ... если запустить какююнибудь игру то она закроет форму .
Автор: Sleepwalker
Дата сообщения: 18.08.2003 12:03
а ты уверен, что форма вот так вот возьмет и отрисуется в любом графическом режиме?
Автор: ShIvADeSt
Дата сообщения: 21.08.2003 07:14
Для чего тебе это надо. Если для длокировки экрана, то пиши. Я помогу. Сам такое делал.
Автор: Andrey aka Master
Дата сообщения: 02.09.2003 22:07
Мне нада чтобы маленькое окно висело поверх игры (counter-strike)
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 00:52
Andrey aka Master а ты где нибудь такое видел? ИМХО обычные окна в графическом режиме плохо отрисовываются . Оччччччччччччень плохо.......... В смысле вообще не отрисовываются.
Автор: mastervigo
Дата сообщения: 03.09.2003 05:21
ShIvADeSt
я такое видел в проге ArtMoney, которая написана на Delphi. Она вызывается по hot-key и перекрывает игрушку.
Автор: Andrey aka Master
Дата сообщения: 03.09.2003 06:36
Я видел в проге Advanced LAN Pump там окно quickinfo повер всего и даже поверх игры
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 07:31
mastervigo


Цитата:
я такое видел в проге ArtMoney, которая написана на Delphi. Она вызывается по hot-key и перекрывает игрушку.

я только что попробовал, она просто кидает ее в бэкграунд, а сама вылетает вперед, а это не то же самое как висеть в режиме отрисовки DirectDraw игрушка Герои 3.

Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?
Автор: mastervigo
Дата сообщения: 03.09.2003 12:01
ShIvADeSt


Цитата:
Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?


Написано же


Цитата:
поверх игры (counter-strike)


Это точно не пасьянс
Автор: dffm
Дата сообщения: 03.09.2003 13:32
SetForegroundWindow(Form2.Handle);
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);
В таймере.... но вроде и так работает (2)
Автор: Andrey aka Master
Дата сообщения: 03.09.2003 16:32

Цитата:
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);

Я пробовал это правда без
Цитата:
SetForegroundWindow(Form2.Handle);

У меня не работало ша попробую еше.

Добавлено
Просто так не работает, а если повесить на таймер то игра все время сворачивается !
Автор: dffm
Дата сообщения: 03.09.2003 19:23
SetForegroundWindow(Form2.Handle);
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);


Событие OnShow . В таймере просто для 100% горантии
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 23:48
dffm ты вначале попробуй, а потом пиши. У меня любая игра перекрывает это окно и даже не чешется. .

mastervigo

Цитата:
Цитата:
Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?

Написано же

Цитата:
поверх игры (counter-strike)

Это точно не пасьянс

Это не ты говорил о контре. А во вторых я уже сказал, что артмани просто кидают себя вперед, а не отрисовавют себя в том же окне, что и игра. Неужели трудно вначале попробовать. Если нужен такой эффект в смысле выкидывания окна поверх любого друго то есть куча способов недовно даже топик был. Я там привел один из них. Кому надо почитайте.
Автор: dffm
Дата сообщения: 04.09.2003 04:37
ShIvADeSt

SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);

все работает!!!, в CS в режиме openGL , только вот винамп в режиме on-Top перекрыть не может...
Автор: Andrey aka Master
Дата сообщения: 05.09.2003 19:16
Да все работает окошко наверху. Но вот один трабл когда мыщкой кликаешь по окну игра сворачивается а программа подразумевает чтобы в этом окне в эдите писать тест.
Никто не знает как реализовать мб длл'ку писать нада ?
Автор: Andrey aka Master
Дата сообщения: 16.08.2003 19:58
Как в Delphi сделать форму поверх всех окон ?
Я ставлю stayontop в formstyle но это мне не подходит ... если запустить какююнибудь игру то она закроет форму .
Автор: Sleepwalker
Дата сообщения: 18.08.2003 12:03
а ты уверен, что форма вот так вот возьмет и отрисуется в любом графическом режиме?
Автор: ShIvADeSt
Дата сообщения: 21.08.2003 07:14
Для чего тебе это надо. Если для длокировки экрана, то пиши. Я помогу. Сам такое делал.
Автор: Andrey aka Master
Дата сообщения: 02.09.2003 22:07
Мне нада чтобы маленькое окно висело поверх игры (counter-strike)
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 00:52
Andrey aka Master а ты где нибудь такое видел? ИМХО обычные окна в графическом режиме плохо отрисовываются . Оччччччччччччень плохо.......... В смысле вообще не отрисовываются.
Автор: mastervigo
Дата сообщения: 03.09.2003 05:21
ShIvADeSt
я такое видел в проге ArtMoney, которая написана на Delphi. Она вызывается по hot-key и перекрывает игрушку.
Автор: Andrey aka Master
Дата сообщения: 03.09.2003 06:36
Я видел в проге Advanced LAN Pump там окно quickinfo повер всего и даже поверх игры
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 07:31
mastervigo


Цитата:
я такое видел в проге ArtMoney, которая написана на Delphi. Она вызывается по hot-key и перекрывает игрушку.

я только что попробовал, она просто кидает ее в бэкграунд, а сама вылетает вперед, а это не то же самое как висеть в режиме отрисовки DirectDraw игрушка Герои 3.

Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?
Автор: mastervigo
Дата сообщения: 03.09.2003 12:01
ShIvADeSt


Цитата:
Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?


Написано же


Цитата:
поверх игры (counter-strike)


Это точно не пасьянс
Автор: dffm
Дата сообщения: 03.09.2003 13:32
SetForegroundWindow(Form2.Handle);
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);
В таймере.... но вроде и так работает (2)
Автор: Andrey aka Master
Дата сообщения: 03.09.2003 16:32

Цитата:
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);

Я пробовал это правда без
Цитата:
SetForegroundWindow(Form2.Handle);

У меня не работало ша попробую еше.

Добавлено
Просто так не работает, а если повесить на таймер то игра все время сворачивается !
Автор: dffm
Дата сообщения: 03.09.2003 19:23
SetForegroundWindow(Form2.Handle);
SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);


Событие OnShow . В таймере просто для 100% горантии
Автор: ShIvADeSt
Дата сообщения: 03.09.2003 23:48
dffm ты вначале попробуй, а потом пиши. У меня любая игра перекрывает это окно и даже не чешется. .

mastervigo

Цитата:
Цитата:
Andrey aka Master игры бывают разные. Это точно игра, которая юзает DirectX или обычное окно типа пасьянса?

Написано же

Цитата:
поверх игры (counter-strike)

Это точно не пасьянс

Это не ты говорил о контре. А во вторых я уже сказал, что артмани просто кидают себя вперед, а не отрисовавют себя в том же окне, что и игра. Неужели трудно вначале попробовать. Если нужен такой эффект в смысле выкидывания окна поверх любого друго то есть куча способов недовно даже топик был. Я там привел один из них. Кому надо почитайте.
Автор: dffm
Дата сообщения: 04.09.2003 04:37
ShIvADeSt

SetWindowPos(Form2.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE+SWP_NOSIZE);

все работает!!!, в CS в режиме openGL , только вот винамп в режиме on-Top перекрыть не может...
Автор: Andrey aka Master
Дата сообщения: 05.09.2003 19:16
Да все работает окошко наверху. Но вот один трабл когда мыщкой кликаешь по окну игра сворачивается а программа подразумевает чтобы в этом окне в эдите писать тест.
Никто не знает как реализовать мб длл'ку писать нада ?

Страницы: 1

Предыдущая тема: Можно ли остановить ShutDown и Reboot?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.