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

Изменение FormStyle при создании формы   Найти похожие ветки 

 
sD ©   (2008-09-02 11:02) [0]

Здравствуйте! В моем приложение несколько форм, формы создаются при вызове. В некоторых случаях стиль форму необходим fsMDIChild, в других  форма должна быть модальной (а значит FormStyle= fsNormal). Изменять стиль формы во время создание не получается. Как быть?


 
Юрий Зотов ©   (2008-09-02 11:12) [1]

В design-time проставьте fsNormal и создавайте форму невидимой, а после ее создания ставьте fsMDChild (если надо).


 
sD ©   (2008-09-02 12:17) [2]

(при установке FormStyle:=fsMDIChild; автоматом устанавливается VertScrollBar-Visibale=true Visibale=true)

до создания:
FormStyle= fsNormal
VertScrollBar-Visibale=false
Visibale=false

1Вариант(ошибок нет,форма не показывается)

TAbout.Create(self);
About.FormStyle:=fsMDIChild;


2Вариант (ошибка, не может прочитать по некоторому  адресу)

TAbout.Create(self);
About.VertScrollBar.Visible:=true;
About.FormStyle:=fsMDIChild;
About.Visible:=true;


 
clickmaker ©   (2008-09-02 12:21) [3]

> TAbout.Create(self);

а где присвоение About?


 
Palladin ©   (2008-09-02 12:25) [4]

как это где, переменная About сама должна понять... логично же... ^)


 
{RASkov} ©   (2008-09-02 12:28) [5]

> [2] sD ©   (02.09.08 12:17)

Знаешь анекдот про фанарь и алкаша, который ищет чего-то там где светлее. Так вот и ты:
Создал в никуда форму

> TAbout.Create(self);

А затем пытаешься работать с подходящей, но не инициализированной переменной About....
:о)


 
clickmaker ©   (2008-09-02 12:29) [6]

> как это где, переменная About сама должна понять... логично
> же...

а в Д2009 не встроили подобную фичу?


 
Юрий Зотов ©   (2008-09-02 13:54) [7]


type
 TFormKind = (fkUsual, fkModal, fkChild);

function CreateAndShowAboutForm(Owner: TComponent; FormKind: TFormKind): TAbout;
begin
 Result := TAbout.Create(Owner);
 try
   case FormKind of
     fkUsual:
       Result.Show;
     fkModal:
       Result.ShowModal;
     else
       Result.FormStyle := fsMDIChild
   end
 except
   Result.Free;
   raise
 end
end;



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

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



Память: 0.46 MB
Время: 0.014 c
1-1199993925
kilonet
2008-01-10 22:38
2008.10.12
Создание отчёта


4-1197883964
p_evghenii
2007-12-17 12:32
2008.10.12
Как завершить работу другого приложения раньше Windows


2-1220338737
Сергей
2008-09-02 10:58
2008.10.12
Как увеличить высоту ComboBox?


15-1219090059
Alien1769
2008-08-19 00:07
2008.10.12
pppoe


15-1216776408
Граф3
2008-07-23 05:26
2008.10.12
Можно ли в html нарисовать график?




   Наверх