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

Главная форма   Найти похожие ветки 

← →
VolMyr   (2009-01-05 04:07) [0]

Здравствуйте. Как изменить програмно главную форму? Например,  Form1 - главная, а при виполнение програмы главная стала Form2.


← →
KilkennyCat ©   (2009-01-05 05:49) [1]

Я тут же отвечу, как только ошибок станет не более одной. Это я про русский язык.


← →
YurikGL ©   (2009-01-05 07:03) [2]

А что, по твоему, есть главная форма?


← →
MsGuns ©   (2009-01-05 11:17) [3]

Что-то подсказывает мне, что автору нужна сплэш-форма


← →
Sergey13 ©   (2009-01-05 11:20) [4]

> [3] MsGuns ©   (05.01.09 11:17)

Хорошо такого подсказчика иметь. 8-)

> [0] VolMyr   (05.01.09 04:07)

Не надо играться с главностью форм. Надо в файле проекта создать и показать ДРУГУЮ форму раньше главной.


← →
Сергей М. ©   (2009-01-05 14:26) [5]


> Как изменить програмно главную форму?


В VCL-приложении - никак.


← →
icWasya ©   (2009-01-05 15:49) [6]


 FormInit:=TFormInit.Create(nil);
 FormInit.Show;
 FormInit.Update;

 Application.CreateForm(TMainForm, MainForm);
 MainForm.Update;

 FormInit.Free;

 Application.Run;


← →
123-ий ©   (2009-01-06 15:03) [7]

Project -> Options. Выбери главную форму. В рантайме делать такие вещи - зло.


← →
KilkennyCat ©   (2009-01-06 15:23) [8]


> В рантайме делать такие вещи - зло.

Почему?
Я делаю постоянно. Зла не ощущаю.


← →
123-ий ©   (2009-01-06 15:42) [9]


> Почему?

а смысл какой???


← →
Юрий Зотов ©   (2009-01-06 16:39) [10]

Сменить можно примерно так:

var
 MainFormAddress: ^TForm;
 OldMainForm, NewMainForm: TForm;
begin
 MainFormAddress := @Application.MainForm; // Адрес поля Application
 OldMainForm := MainFormAddress^;
 NewMainForm := TNewMainForm.Create(Application);
 MainFormAddress^ := NewMainForm; // Вуаля!
 OldMainForm.Free;

Но прежде, чем пользоваться такими полухакерскими приемами, сначала нужно очень хорошо подумать - а оно действительно необходимо? Нельзя ли решить задачу нормальными средствами?


← →
KilkennyCat ©   (2009-01-06 17:42) [11]


> 123-ий ©   (06.01.09 15:42) [9]

Отсутствие смысла не есть зло. Ибо кому - отсутствие, а кому - смысл.


> Юрий Зотов ©
> Нельзя ли решить задачу нормальными средствами?


Конечно можно. Можно осуществить перезапуск приложения с параметром, но проще всего скрыть единственную главную форму нафиг и играться видимостью дочерних.


← →
123-ий ©   (2009-01-08 06:25) [12]


> но проще всего скрыть единственную главную форму нафиг и
> играться видимостью дочерних.

вот то-то и оно :)


← →
Юрий Зотов ©   (2009-01-08 18:45) [13]

> KilkennyCat ©   (06.01.09 17:42) [11]

> Конечно можно.

Однажды все же пришлось столкнуться с задачей, где требовалась именно замена главной формы (притом, возможно, еще и неоднократная).

Всякое бывает...


← →
Игорь Шевченко ©   (2009-01-10 01:37) [14]

"Корректно оформляйте заголовок ветки, который должен кратко отражать суть вопроса"



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

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



Память: 0.47 MB
Время: 0.013 c
15-1229507025
nnov
2008-12-17 12:43
2009.02.22
iphone и im apollo


15-1230107338
xayam
2008-12-24 11:28
2009.02.22
У нас этого много


15-1230069029
Kerk
2008-12-24 00:50
2009.02.22
Как это понять?


15-1230156693
Дмитрий Белькевич
2008-12-25 01:11
2009.02.22
Вопрос по поводу GNU


2-1231673189
Pavel
2009-01-11 14:26
2009.02.22
Выполнение SQL-скрипта в Delphi




   Наверх