Форум: "Начинающим";
Текущий архив: 2007.01.07;
Скачать: [xml.tar.bz2];
ВнизTaskBar, Alt+Tab Найти похожие ветки
← →
vain © (2006-12-15 14:14) [0]Вопрос. Как сделать так, чтобы программа никак не обозначалась ни на таскбаре, ни в альттабе?
Нашел на delphimaster"e:
program Project1;
uses
Forms,
Windows,
Unit1 in "Unit1.pas" {Form1};
{$R *.RES}
var
ExtendedStyle : integer;
begin
Application.Initialize;
ExtendedStyle:=GetWindowLong(application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle, GWL_EXSTYLE,
ExtendedStyle or WS_EX_TOOLWINDOW {AND NOT WS_EX_APPWINDOW});
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Попробовал - из таскбара прячет, из альттаба - нет.
Ещё вопрос. Есть такая функция ShowWindow. В справке написано:
The ShowWindow function sets the specified window"s show state.
BOOL ShowWindow(
HWND hWnd, // handle of window
int nCmdShow // show state of window
);
Parameters
hWnd
Identifies the window.
Но я втречал такое:ShowWindow(Application.Handle, SW_HIDE)
Таким образом прячется программа с таскбара... Но ведь первый параметр - это хендл окна? Насколько я понял эта функция предназначена для окон, а не для приложений?
← →
umbra © (2006-12-15 14:28) [1]программы на делфи, использующие формы VCL создают невидимое окно, представляющее объект Application.
← →
BOB16 (2006-12-15 15:31) [2]Где-то встречал такое: может стоит порыться в ?:
integer i:=0;
SystemParametersInfo(SPI_SETFASTTASKSWITCH, 1, @i, 0);
← →
vain © (2006-12-15 15:59) [3]
> BOB16 (15.12.06 15:31) [2]
>
> Где-то встречал такое: может стоит порыться в ?:
> integer i:=0;
> SystemParametersInfo(SPI_SETFASTTASKSWITCH, 1, @i, 0);
Увы, это работает только до WinNT4.0
← →
alex_*** © (2006-12-15 16:03) [4]а из TaskManager"a надо прятать?
← →
DVM © (2006-12-15 16:05) [5]
> Насколько я понял эта функция предназначена для окон, а
> не для приложений?
А у приложений нет хэндлов
← →
vain © (2006-12-15 16:14) [6]
> а из TaskManager"a надо прятать?
Да, но с этим я уже справился.
>
> DVM ©
> А у приложений нет хэндлов
>
Уже понял из [1]
← →
umbra © (2006-12-15 16:36) [7]на 98-й винде следующий код делает то, что надо, но у формы нет кнопок для сворачивания.разворачивания и максимизации
procedure TForm1.FormCreate(Sender: TObject);
var
ExtStyle: Integer;
begin
ExtStyle := GetWindowLong(Handle, GWL_EXSTYLE);
SetWindowLong(Handle, GWL_EXSTYLE, ExtStyle or WS_EX_TOOLWINDOW);
ExtStyle := GetWindowLong(Application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle, GWL_EXSTYLE, ExtStyle or WS_EX_TOOLWINDOW);
end;
← →
vain © (2006-12-15 19:24) [8]
> на 98-й винде
Да нме б в XP
:((((((((((((((((
А как же WinAmp работает?!!
← →
BOB16 (2006-12-16 22:21) [9]Могет подойдёт: http://www.delphikingdom.ru/asp/answer.asp?IDAnswer=45183
← →
antonn © (2006-12-16 22:44) [10]я фигею...
автор, попробуй в коде в своем первом посте убрать фигурные скобки...
← →
vain © (2006-12-17 18:09) [11]
> antonn © (16.12.06 22:44) [10]
>
> я фигею...
> автор, попробуй в коде в своем первом посте убрать фигурные
> скобки...
>
Гы...
Да это я просто по-всякому старался: ставил, убирал. Вот и получилось, что в таком виде прислал:)
← →
sicilla © (2006-12-17 23:39) [12]Найди какой-нибудь компонент для работы с Tray, брось на форму, настрой его, и тогда все что хочешь, у тебя получится (У меня работает, проверил). Кроме диспетчера задач. Оттуда надо будет уже постараться убрать твою задачу.
Могу посоветовать CoolTray или JVCL320CompleteJCL197 (очень крутой набор компнентов)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.01.07;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c