Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2015, 09:24   #11
Filka
Форумчанин
 
Регистрация: 29.10.2015
Сообщений: 272
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
CreateNew ДА!!! НО !!! не вызывать ЭТО в конструкторе, а использовать ЭТОТ конструктор для создания объекта.
В самом конструкторе TForm (точнее TCustomForm) вызывается сначала CreateNew.

Последний раз редактировалось Filka; 06.11.2015 в 09:27.
Filka вне форума Ответить с цитированием
Старый 06.11.2015, 09:43   #12
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Это для передачи параметров в форму?

1. Переопределить Create

Код:
type
  TForm2 = class(TForm)
  private
    lParmAdd: Integer;
  public
    constructor Create(AOwner: TComponent; ParmAdd: Integer);
  end;

...

constructor TForm2.Create(AOwner: TComponent; ParmAdd: Integer);
begin
  inherited Create(AOwner);
  lParmAdd:=ParmAdd;
end;

// Создание

  Form2:=TForm2.Create(Application,1);
2. Другой конструктор

Код:
type
  TForm2 = class(TForm)
  private
    lParmAdd: Integer;
  public
    { Public declarations }
    constructor MyCreate(AOwner: TComponent; ParmAdd: Integer);
  end;

...

constructor TForm2.MyCreate(AOwner: TComponent; ParmAdd: Integer);
begin
  Create(AOwner);
  lParmAdd:=ParmAdd;
end;

// Создание

  Form2:=Form2:=TForm2.MyCreate(Application,1);
3. Можно и так
Код:
type
  TForm2 = class(TForm)
  private
    { Private declarations }
    lParmAdd: Integer;
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

procedure Form2Create(ParmAdd: Integer);

implementation

procedure Form2Create(ParmAdd: Integer);
begin
  Form2:=TForm2.Create(Application);
  Form2.lParmAdd:=ParmAdd;
  Form2.Show;
end;

// Создание

  Form2Create(3);
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 06.11.2015, 11:09   #13
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

А для чего на практике тебе понадобилось динамически создавать именно форму, а не какой-либо другой оконный объект?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 06.11.2015, 15:48   #14
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Спасибо! Буду разбираться!
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое создание компонентов Janger Общие вопросы Delphi 11 29.06.2015 16:19
Создание новых компонентов... ALKOrobot Общие вопросы C/C++ 5 04.01.2011 19:42
динамическое создание компонентов DOLBY Компоненты Delphi 10 17.10.2010 14:03
Создание собственных компонентов D7 postal2 Помощь студентам 4 21.08.2009 09:07