Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сделать программу невидимой по Alt+Tab [Win2k, WinXP]


deamon_t ©   (2005-08-11 21:59:00) 

Приветик товарищи программеры! Кодскажите кто знает как собвственно сделать программу невидимой по alt+tab. Заранее спасибо.


AlexRya   (2005-08-14 22:13:00) [1]

Anatoly Podgoretsky ©   (12.08.05 23:33) [8]

А может наоборот? :-)
Тут ведь надо разобраться, что из чего следует. За кнопку на панели задач, ессесно, отвечает explorer. Убъем его через. Никакой панели нет, как, впрочем, и кнопочки на ней. А вот приложания в Alt-Tab остались.

Год, наверное, сюда не заходил, а список вопросов не изменился. Приятно хоть знакомые имена видеть. Здрасьте, Анатолий. Хотя вряд ли Вы меня помните.


Андрей Молчанов   (2005-08-13 10:42:00) [2]

А если попробовать просто
ShowWindow(Application.Handle,sw_hide);
?


KilkennyCat   (2005-08-12 23:39:00) [3]

Удалено модератором


KilkennyCat   (2005-08-12 23:38:00) [4]

Значит, необходимо перехватывать нажатие альттаба, и в этот момент приводить программу в невидимость, позже - восстанавливать. Кривовато, но судя по всему, по другому - никак.


Anatoly Podgoretsky   (2005-08-12 23:33:00) [5]

deamon_t   (11.08.05 21:59)  
Чтобы программа была не видима в списке Alt+Tab она не должна иметь кнопки в панели задач.


deamon_t   (2005-08-12 23:24:00) [6]

Андрей Молчанов - это работает не так как необходимо оно делает форму невидимой, её не видно по альт+таб, но мне нужно чтобы форму было видно на экране но невидно по альт+таб...


Андрей Молчанов   (2005-08-12 23:11:00) [7]

ShowWindow(Handle,sw_hide);
ShowWindow(Application.Handle,sw_hide);

Должен работать


deamon_t   (2005-08-12 22:58:00) [8]

Удалено модератором


Игорь Шевченко   (2005-08-12 10:12:00) [9]

У главного окна сделать BorderStyle = bsToolWindow или bsSizeToolWin


Kazakh   (2005-08-12 07:03:00) [10]

Я пользуюсь этим (назови имя проекта типа Internat32 и все будет ок)

ShowWindow(Handle,sw_hide);
ShowWindow(Application.Handle,sw_hide);


KilkennyCat   (2005-08-11 22:46:00) [11]

имеется ввиду, что по нажатию альт+таб программа становится невидимой. Этого делать ненадо, так как уже реализовано в альт+ф4.


Kolan   (2005-08-11 22:30:00) [12]


> программу невидимой

Поясните. Мож имеется в виду форма.


> alt+tab

HotKey пойдёт? Вот пример

type  
TForm1 = class(TForm)  

  procedure FormCreate(Sender: TObject);  

  procedure FormDestroy(Sender: TObject);  

protected  

  procedure hotykey(var msg:TMessage); message WM_HOTKEY;  

end;  

 

 
var  
 Form1: TForm1;  
 id,id2:Integer;  

implementation  

{$R *.DFM}  

procedure TForm1.hotykey(var msg:TMessage);  
begin  
if (msg.LParamLo=MOD_CONTROL) and (msg.LParamHi=81) then  

 
begin  

 
ShowMessage('Ctrl + Q wurde gedrьckt !');  

 
end;  

 
if (msg.LParamLo=MOD_CONTROL) and (msg.LParamHi=82) then  

 
begin  

 
ShowMessage('Ctrl + R wurde gedrьckt !');  

 
end;  

 
end;  

procedure TForm1.FormCreate(Sender: TObject);  
begin  
id:=GlobalAddAtom('hotkey');  

RegisterHotKey(handle,id,mod_control,81);  

id2:=GlobalAddAtom('hotkey2');  

RegisterHotKey(handle,id2,mod_control,82);  

 
end;  

procedure TForm1.FormDestroy(Sender: TObject);  
begin  
UnRegisterHotKey(handle,id);  

UnRegisterHotKey(handle,id2);  

 
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо