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

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

Как убрать програму с панели пуск ? [D7, WinXP]


kolj ©   (2007-08-14 10:39:00) 

Мне нужно чтоб форма програмы была на рабочем столе, но в панеле пуск ее небыло.


DVM   (2007-08-14 13:27:00) [1]


> Однокамушкин   (14.08.07 13:09) [5]


> Во-первых, убирать флаг WS_EX_APPWINDOW из стиля главного
> окна не нужно - его там и так нет...

Да, действительно, не заметил.


> Во-вторых, достаточно где-нибудь в начале сделать вызов
>
> SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.
> Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW);

Можно и так. Есть еще и другие варианты.


Однокамушкин   (2007-08-14 13:09:00) [2]


> DVM ©   (14.08.07 11:07) [4]

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

SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW);

и тогда не нужно вызывать ShowWindow при каждой активации


DVM   (2007-08-14 11:07:00) [3]


unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
   procedure FormActivate(Sender: TObject);
 private
   { Private declarations }
   procedure CreateParams(var Params: TCreateParams); override;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 with Params do
   ExStyle := ExStyle and not WS_EX_APPWINDOW;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 ShowWindow(Application.Handle,SW_Hide);
end;

end.


kolj   (2007-08-14 10:52:00) [4]

to DVM  спасибо , так будет правильно.


DVM   (2007-08-14 10:49:00) [5]

Перевожу: Как мне сделать, чтобы окно программы отображалось на рабочем столе, но кнопки программы в списке задач на панели задач не было?


homm   (2007-08-14 10:47:00) [6]

> но в панеле пуск ее небыло.

Закрыть панель пуск?
В стандартной поставке нет такой панели.


Наверх

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