Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Динамическая вставка фрейма в форму? [D7, WinXP]


Страницы:   1 2 3

dusha ©   (2008-02-06 17:33:00) 

Помогите динамически вставить фрейм в форму


dusha   (2008-02-08 13:56:00) [21]

теперь ясно, благодарю ketmar


ketmar   (2008-02-08 13:30:00) [22]

>[23] dusha © (2008-02-08 13:19:00)
>немножко не понимаю слысла слова сабж
сабж == subj == subject == «заголовок ветки»

---
Understanding is not required. Only obedience.


dusha   (2008-02-08 13:19:00) [23]


> MsGuns ©   (06.02.08 22:09) [10]
> Смысл сабжа какой-то гротескный :)

а это как?
простите немножко не понимаю слысла слова сабж


MsGuns   (2008-02-07 21:14:00) [24]

На [10] не обратили внимания. А напрасно ;)


Игорь Шевченко   (2008-02-07 17:28:00) [25]


> with TFrame.Create(Self) do begin
>    Parent:=Self;
>    Align := alClient;    
>    Visible:=true;
>   end;


Я извиняюсь, а зачем пустой фрейм создавать ?


clickmaker   (2008-02-07 16:20:00) [26]


> ну и что ты натоврил? научил дитё заклинанию…

если не утонет, то плавать научится
как обычно...


ketmar   (2008-02-07 16:14:00) [27]

>не знаю как но это работает

>clickmaker
ну и что ты натоврил? научил дитё заклинанию…

---
Understanding is not required. Only obedience.


dusha   (2008-02-07 16:10:00) [28]

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


clickmaker   (2008-02-07 15:52:00) [29]

кстати.
А почему просто TFrame, а не TMySuperFrameWithButtonsPicturesEtc?


clickmaker   (2008-02-07 15:51:00) [30]


> [14] dusha ©   (07.02.08 15:42)

в FStart.OnCreate:

with TFrame.Create(Self) do begin
   Parent:=Self;
   Align := alClient;    
   Visible:=true;
  end;


ketmar   (2008-02-07 15:49:00) [31]

а зачем? коли форма «чистая» — так на кой тут фрэйм?

---
Understanding is not required. Only obedience.


dusha   (2008-02-07 15:42:00) [32]

Люди, может я вопрос не так поставил, потому не выходит то что вижу.
Есть фрейм (уже созданный, с картинками, кнопочками, панельками и т.д), а нужно этот фрейм вставить в форму (форма полностью чистая), потом после работы с фреймом его удалить (фрейм в смысле). Перепробовал все что советовали, ничего не получается.
P.S. и хотелось бы чтобы это все было при создании формы, а не по нажатия кнопки.
Заранее благодарю за помощь и поддержку


ketmar   (2008-02-07 15:42:00) [33]

>как только начинаем одни и те же экземпляры компонент создавать в
>run-time — оказывается, что им присваивается одинаковое значение name — и
>вот тут уже начинаются exception по поводу того, что два одинаковых
>значения name недопустимы

упс. пойду патч качать. а то я батоны создавал — и ничего, работали безо всяких манипуляций с name…

---
Understanding is not required. Only obedience.


KSergey   (2008-02-07 15:27:00) [34]

> KSergey ©   (07.02.08 15:25) [11]
> но как только начинаем одни и те же экземпляры компонент создавать


Имелось в виду "экземпляры компонент одного класса".


KSergey   (2008-02-07 15:25:00) [35]

> {RASkov} ©   (06.02.08 22:03) [8]
> > Name:='ZapFr';
> Ну и так желательно не делать.... Name вообще в рантайм
> как правило не нужно...

А вот тут засада есть.
Для форм и компонент, которые дизайнятся в design-time свойство "name" назначается уникальное (в каких-то пределах, чета не задумывался в каких; либо по owner, либо по parent. Или глобально?! да нет... чета не задумывался :)
ну не важно, короче действительно потом это неприятносней никогда не доставляет.
но как только начинаем одни и те же экземпляры компонент создавать в run-time - оказывается, что им присваивается одинаковое значение name - и вот тут уже начинаются exception по поводу того, что два одинаковых значения name недопустимы (в каких рамках? ну не важно).

Так что надо либо генерить уникальные, либо назначать пустую строку полю name:) Это не возбранятеся (от чего-то; дял удобства?).


MsGuns   (2008-02-06 22:09:00) [36]

Смысл сабжа какой-то гротескный :)


{RASkov}   (2008-02-06 22:06:00) [37]

Блин... и вот еще:

> Parent:=FStart;

так тоже плохо поступать :) Лучше так:

Parent:=Self;

Ну и напоследок, наверное, вот это:
>Visible:=true;
тоже не к чему в данном случае :) Оно так по умолчанию....


{RASkov}   (2008-02-06 22:03:00) [38]

> [6] Dusha ©   (06.02.08 21:57)
> Name:='ZapFr';

Ну и так желательно не делать.... Name вообще в рантайм как правило не нужно...


{RASkov}   (2008-02-06 22:02:00) [39]

> [6] Dusha ©   (06.02.08 21:57)

А так попробуй:
//procedure TFStart.CreateFStart(Sender: TObject);
procedure TFStart.Buttonclick(Sender: TObject);
begin
   //ClientHeight:=502;
   //ClientWidth:=722;
   //Position:=poDesktopCenter;

  with TFrame.Create(Self) do begin
   Parent:=FStart;
   Name:='ZapFr';
   Left:=10;
   Top:=10;
   Visible:=true;
    Color:=clBlack;
  end;
end;

:) Все равно нет?


Dusha   (2008-02-06 21:57:00) [40]

пробовал так:
procedure TFStart.CreateFStart(Sender: TObject);
begin
   ClientHeight:=502;
   ClientWidth:=722;
   Position:=poDesktopCenter;
   Frame.Parent:=FStart;
   Frame.Left:=10;
   Frame.Top:=10;
   Frame.Visible:=true;
 end;
попробовал таким образом, все равно не выходит:
procedure TFStart.CreateFStart(Sender: TObject);
begin
    ClientHeight:=502;
    ClientWidth:=722;
    Position:=poDesktopCenter;
 
   with TFrame.Create(Self) do begin
    Parent:=FStart;
    Name:='ZapFr';
    Left:=10;
    Top:=10;
    Visible:=true;
   end;
end;


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо