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

GWL_EXSTYLE в windows XP   Найти похожие ветки 

← →
Василий К.   (2007-10-25 11:13) [0]

Ребят, подскажите, что не так:

var
ExtendedStyle : integer;

 ExtendedStyle:=GetWindowLong(application.Handle, GWL_EXSTYLE);
 SetWindowLong(Application.Handle, GWL_EXSTYLE,
   ExtendedStyle or WS_EX_TOOLWINDOW);
 Application.Initialize;
 Application.CreateForm(TfmDesktop, fmDesktop);
 Application.Run;

при таком раскладе форма не должна создавать кнопку на панели задач, верно?
а у меня создает и причем создает при появлении каждой формы обновляет её с другой анимацией...

как бы разобраться?


← →
Lacmus ©   (2007-10-25 12:26) [1]

Какая версия Delphi ?


← →
Василий К.   (2007-10-25 12:43) [2]

CodeGear 2007
в 2006 проблем не возникало.


← →
Lacmus ©   (2007-10-25 12:59) [3]

Изменить для TfmDesktop



unit Unit79;

interface

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

type
 TForm79 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
   procedure VisibleChanging; override;
 end;

var
 Form79: TForm79;

implementation

{$R *.dfm}

procedure TForm79.VisibleChanging;
begin

end;

end.



← →
Василий К.   (2007-10-25 13:04) [4]

А в саму процедуру что записать?


← →
Василий К.   (2007-10-25 13:22) [5]

Это помогло. Но приходится данную процедуру забивать в каждую новосоздаваемую форму :(

Нет ли других решений? И почему этот баг имеет место быть?


← →
Lacmus ©   (2007-10-25 13:57) [6]

>Это помогло. Но приходится данную процедуру забивать в каждую новосоздаваемую форму :(

Повторить не удалось.

>Нет ли других решений?

ShowWindow(Application.Handle, SW_HIDE) ?

>И почему этот баг имеет место быть?

Скорее так задумано



{ Forms.pas }

procedure TCustomForm.VisibleChanging;
begin
 if (FormStyle = fsMDIChild) and Visible and (Parent = nil) then
   raise EInvalidOperation.Create(SMDIChildNotVisible);
 if (Self = Application.MainForm) and not (csDestroying in ComponentState) then
 begin
   if Visible then
   begin
     ChangeAppWindow(Handle, not Application.MainFormOnTaskBar, True);
     ChangeAppWindow(Application.Handle, Application.ShowMainForm, True);
   end
   else
   begin
     ChangeAppWindow(Application.Handle, not Application.MainFormOnTaskBar, False);
     ChangeAppWindow(Handle, Application.MainFormOnTaskBar, True);
   end;
 end;
end;



← →
Прохожий   (2007-10-26 12:56) [7]

Удалено модератором
Примечание: Забаню за неуважение к правилам



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

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



Память: 0.46 MB
Время: 0.017 c
2-1214468381
Ega23
2008-06-26 12:19
2008.07.27
Правильно ли написал наследника TList?


15-1212760713
Vlad Oshin
2008-06-06 17:58
2008.07.27
моя плакаю. Бросаем delphi, переходим на С под NET


2-1214220645
ciborg
2008-06-23 15:30
2008.07.27
Сбор информации о системе


6-1190719291
mefodiy
2007-09-25 15:21
2008.07.27
Скачивание информации о курсах валют


10-1148469511
AbrosimovA
2006-05-24 15:18
2008.07.27
Как прочитать сгенерированное сообщение по останову сервиса




   Наверх