Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.26;
Скачать: CL | DM;

Вниз

Где задаётся порядок создания компонент ?   Найти похожие ветки 

 
b/@. ©   (2009-05-28 15:28) [0]

Добрый день.
Подскажите пожалуйста, в каком файле или каким способом задаётся порядок создания компонент на форме ?
Для невизуальных видимо так: RMB на форме > Creation order, а для визуальных где ? И как задать свой порядок ?


 
Игорь Шевченко ©   (2009-05-28 15:35) [1]


> в каком файле или каким способом задаётся порядок создания
> компонент на форме


в dfm


> И как задать свой порядок ?


зачем ?


 
Ega23 ©   (2009-05-28 15:38) [2]


> И как задать свой порядок ?


А что тебе это даст???


 
b/@. ©   (2009-05-28 15:48) [3]


> зачем ?

У меня на форме используются два разных ActiveX-компонента, и почему-то при создании формы выскакивает AV, но когда их ставишь по отдельности - то никаких проблем.
Хочу попробовать изменить порядок создания компонент.


 
Ega23 ©   (2009-05-28 16:05) [4]


> Хочу попробовать изменить порядок создания компонент.


Может всё-таки имеет смысл найти причину?


 
Игорь Шевченко ©   (2009-05-28 16:13) [5]


> Хочу попробовать изменить порядок создания компонент.


попробуй в dfm их переместить


 
b/@. ©   (2009-05-28 17:37) [6]

Попробовал переместить их в dfm в конец, вроде помогло.

Но обнаружил особенность, что в самый конец переместить не получилось. Delphi упорно помещает в конце dfm невизуальные компоненты вроде TOpenDialog.
Я так понимаю, что самому регулировать порядок можно лишь для визуальных компонентов...


 
Amoeba ©   (2009-05-29 00:26) [7]


> Delphi упорно помещает в конце dfm невизуальные компоненты
> вроде TOpenDialog.

Неужели такое создает проблемы?


 
Германн ©   (2009-05-29 01:16) [8]


> Amoeba ©   (29.05.09 00:26) [7]
>
>
> > Delphi упорно помещает в конце dfm невизуальные компоненты
> > вроде TOpenDialog.
>
> Неужели такое создает проблемы?

Запросто.


 
Amoeba ©   (2009-05-29 01:38) [9]


> Германн ©   (29.05.09 01:16) [8]

Это смотря какие. Если вроде TOpenDialog, то пофигу.


 
KilkennyCat ©   (2009-05-29 03:56) [10]

а оптимизация компиляции не может влиять?


 
Ega23 ©   (2009-05-29 09:56) [11]


> Запросто.


"НЕ ВЕРЮ!"  (с)


 
b/@. ©   (2009-05-29 14:55) [12]


> Amoeba ©   (29.05.09 00:26) [7]
> > вроде TOpenDialog.
> Неужели такое создает проблемы?

В моём случае проблем не создаёт. Т.к. из невизуальных создаётся всего-лишь TOpenDialog, TActionList, TTimer и TApplicationEvents.

Но потенциальным источником проблем служит сама невозможность задать порядок создания компонент в произвольном порядке. Т.е. накладывается еще одно из ограничений в разработке.


 
Ega23 ©   (2009-05-29 14:59) [13]


> Но потенциальным источником проблем служит сама невозможность
> задать порядок создания компонент в произвольном порядке.
>  Т.е. накладывается еще одно из ограничений в разработке.
>


Кто тебе такую фигню сказал?


 
Ega23 ©   (2009-05-29 15:06) [14]

type

 TMemoForm = class (TForm)
 private

  procedure OnbtnOKClick (Sender : TObject);

 public
   constructor Create(AOwner: TComponent); override;
   destructor Destroy; override;

   Memo : TMemo;
   btnOK : TButton;
   btnCancel : TButton;
   pnButtons : TPanel;

 end;

constructor TMemoForm.Create(AOwner: TComponent);
begin
 inherited Create;
 pnButtons := TPanel.Create(Self);
 pnButtons.Parent := Self;
 pnButtons.Height := 30;
 pnButtons.Align := alBottom;
 
 Memo := TMemo.Create(Self);
 Memo.Parent := Self;
 Memo.Align := alClient;

 btnOK := TButton.Create(Self);
 btnOK.Parent := pnButtons;
 btnOK.Caption := "OK";
 btnOK.OnClick := OnbtnOKClick;

 ......
end;


 
b/@. ©   (2009-05-29 15:21) [15]


> Ega23 ©   (29.05.09 14:59) [13]
> Кто тебе такую фигню сказал?

Я вас не понимаю :( Что вы хотите сказать этим куском кода ?


 
Ega23 ©   (2009-05-29 15:30) [16]


> Я вас не понимаю


Что непонятно? Что код делает?


 
b/@. ©   (2009-05-29 15:32) [17]


> Ega23 ©   (29.05.09 15:30) [16]
> Что непонятно? Что код делает?

Что вы хотите сказать этим куском кода ? Слово фигню я понял...


 
Ega23 ©   (2009-05-29 15:35) [18]


> источником проблем служит сама невозможность задать порядок
> создания компонент в произвольном порядке. Т.е. накладывается
> еще одно из ограничений в разработке.


Твои слова?


 
Игорь Шевченко ©   (2009-05-29 15:38) [19]


> Кто тебе такую фигню сказал?


Как ты думаешь, зачем придумали метод TComponent.Loaded ?


 
b/@. ©   (2009-05-29 15:44) [20]


> Ega23 ©   (29.05.09 15:35) [18]
> > источником проблем служит сама невозможность задать порядок
> > создания компонент в произвольном порядке. Т.е. накладывается
> > еще одно из ограничений в разработке.
> Твои слова?

Слова мои.
И я действительно не понимаю, почему создание невизуальных компонент нельзя задать вперемешку с визуальными. Среда упорно помещает их создание в конец.


 
Ega23 ©   (2009-05-29 15:46) [21]


> почему создание невизуальных компонент нельзя задать вперемешку
> с визуальными.


Кто тебе сказал, что нельзя?


 
b/@. ©   (2009-05-29 15:51) [22]


> Ega23 ©   (29.05.09 15:46) [21]
> > почему создание невизуальных компонент нельзя задать вперемешку
> > с визуальными.
> Кто тебе сказал, что нельзя?

А как можно ?
В этом и состоял мой вопрос - Где задаётся порядок создания компонент ?
Конструктивного ответа от вас я не услышал - только лишь какие-то непонятные нападки...


 
Ega23 ©   (2009-05-29 16:01) [23]


> А как можно ?


Ты код смотрел? Или "многабукф" увидел?


 
Ega23 ©   (2009-05-29 16:03) [24]

Если по прежнему не понимаешь: ручками, всё ручками. Любой порядок.


 
b/@. ©   (2009-05-29 16:17) [25]


> Ega23 ©   (29.05.09 16:01) [23]
> Ты код смотрел? Или "многабукф" увидел?

Вы вопрос внимательно прочитали ?


 
Игорь Шевченко ©   (2009-05-29 16:22) [26]

Порядок создания компонент определяется их порядком в dfm.
И все.


 
b/@. ©   (2009-05-29 16:29) [27]


> Игорь Шевченко ©   (29.05.09 16:22) [26]
> Порядок создания компонент определяется их порядком в dfm.
> И все.

Это я понял еще вчера - только с одним ньюансом, который я описал еще в [6].


 
Игорь Шевченко ©   (2009-05-29 16:34) [28]


> Это я понял еще вчера - только с одним ньюансом, который
> я описал еще в [6].


Нюансов не существует. Если ты переместишь в dfm невизуальные компоненты в самое начало, они будут создаваться перед визуальными


 
Юрий Зотов ©   (2009-05-29 17:45) [29]

> b/@

Похоже, глючок имеется в одном (по крайней мере) из этих ActiveX. При грамотном исполнении внешние ссылки компонента разрешаются в Loaded, а там, похоже, такого нет.

Создавайте их динамически, в OnCreate и в нужном порядке.


 
b/@. ©   (2009-06-01 12:35) [30]


> Игорь Шевченко ©   (29.05.09 16:34) [28]
> Нюансов не существует. Если ты переместишь в dfm невизуальные компоненты в самое начало, они будут создаваться перед визуальными

Какой смысл мне вас обманывать ?
Переместить то можно, но при первом же сохранении среда всё-равно переместит невизуальные в конец dfm.


> Юрий Зотов ©   (29.05.09 17:45) [29]
> Похоже, глючок имеется в одном (по крайней мере) из этих ActiveX...
> Создавайте их динамически, в OnCreate и в нужном порядке.

Я грешу больше на второй, он разрабатывался у нас как плагин для IE. И, насколько я знаю, использует для отрисовки OpenGL. Наверное ему не нравиться встроенная видеокарта и её драйвер.
А сделать его самым последним хотелось, чтобы другие контролы успели нормально создаться.
Создавать в OnCreate рассматриваю скорее как резервный вариант.


 
Игорь Шевченко ©   (2009-06-01 13:16) [31]


> Переместить то можно, но при первом же сохранении среда
> всё-равно переместит невизуальные в конец dfm.


Среда - может быть. Я руками перемещаю, если такая блажь в голову придет. Потом стараюсь найти ошибку, чтобы порядок, устанавливаемый средой не влиял.



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

Текущий архив: 2009.07.26;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.018 c
8-1195904575
DmT
2007-11-24 14:42
2009.07.26
Вписывание картинки


11-1204046814
andreil
2008-02-26 20:26
2009.07.26
Как быстро сравнить два файла?


15-1242852156
Германн
2009-05-21 00:42
2009.07.26
Копирование таблицы из pdf в doc


15-1242935407
Эстет
2009-05-21 23:50
2009.07.26
Чему равно 2*2,222


2-1243581599
И. Павел
2009-05-29 11:19
2009.07.26
Разное поведение программы при выполнении и отладке