Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Динамическая память   Найти похожие ветки 

 
akosh12345 ©   (2010-06-06 02:27) [0]

Как сделать, что бы динамически созданный элемент находился на форме, которая в свою очередь тоже была создана динамически

procedure TForm1.Button1Click(Sender: TObject);
var
  i : TForm;
  l : TLabel;
begin
  i := TForm.Create(nil);
  i.Parent := nil;
  i.Show;
  i.Position := poScreenCenter;
  l := TLabel.Create(nil);
  l.Parent := i.;
  l.Left :=1;
  l.Top := 1;
end;

Мне нужно что бы на форме был Label


 
Германн ©   (2010-06-06 02:47) [1]


> Мне нужно что бы на форме был Label
>

Именно после показа формы?


 
Германн ©   (2010-06-06 02:50) [2]

Сам сабж, кстати, не имеет никакого отношения к вопросу в нём.


 
Leonid Troyanovsky ©   (2010-06-06 08:16) [3]


procedure TForm1.Button1Click(Sender: TObject);
var
 i : TForm;
 l : TLabel;
begin
 i := TForm.CreateNew(nil);
 i.Parent := nil;
 i.Show;
 i.Position := poScreenCenter;
 l := TLabel.Create(nil);
 l.Caption := "Label";
 l.Parent := i;
 l.Left :=1;
 l.Top := 1;
end;

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2010-06-06 08:19) [4]

> akosh12345  (06.06.2010 02:27:00)  [0]

Не понимаешь что творишь, это же бред.
Тебе не стоит этим заниматься.


 
Leonid Troyanovsky ©   (2010-06-06 08:51) [5]


> Anatoly Podgoretsky ©   (06.06.10 08:19) [4]

Поправлюсь :)

procedure TForm1.Button1Click(Sender: TObject);
var
 i : TForm;
begin
 i := TForm.CreateNew(nil);
 i.OnClose := FormClose;
 i.Position := poScreenCenter;
 with TLabel.Create(i) do
    begin
      Caption := "Label";
      Parent := i;
      Left :=1;
      Top := 1;
    end;
 i.Show;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Action := caFree;
end;

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2010-06-06 09:00) [6]

> Leonid Troyanovsky  (06.06.2010 08:51:05)  [5]

Ну нифига себе поправил, тут же появились, толи глобальные, толи не
объявленые переменные (L)
Тут начинат надо с имен.
И будет ли еще цел TForm1, когда потребуется FormClose

Неаккуратно все как то.


 
Leonid Troyanovsky ©   (2010-06-06 09:04) [7]


> Anatoly Podgoretsky ©   (06.06.10 09:00) [6]

> объявленые переменные (L)

L уже нету, это i or 1, видимо.

> И будет ли еще цел TForm1, когда потребуется FormClose

Это неважно, метод уцелеет.

> Неаккуратно все как то.

Ну, сначала, хотел наследника, но поленился, sorry.

--
Regards, LVT.


 
Leonid Troyanovsky ©   (2010-06-06 09:24) [8]


> Leonid Troyanovsky ©   (06.06.10 09:04) [7]

> Ну, сначала, хотел наследника, но поленился, sorry.

Исправляюсь:

type
 TMyForm = class(TForm)
 private
   FLabel: TLabel;
 protected
   procedure DoClose (var action: TCloseAction); override;
 public
   constructor Create(AOwner: TComponent); override;
 end;

procedure TMyForm.DoClose;
begin
 inherited;
 Action := caFree;
end;

constructor TMyForm.Create;
begin
 CreateNew(AOwner);
 Caption := "MyForm";
 Position := poScreenCenter;
 FLabel := TLabel.Create(Self);
 with FLabel do
   begin
     Caption := "Label";
     Parent := Self;
     Left :=1;
     Top := 1;
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 with TMyForm.Create(nil) do
   Show;
end;

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2010-06-06 09:29) [9]

> Leonid Troyanovsky  (06.06.2010 09:24:08)  [8]

Вот и взяли на слабо :-)


 
Leonid Troyanovsky ©   (2010-06-06 09:41) [10]


> Anatoly Podgoretsky ©   (06.06.10 09:29) [9]

> Вот и взяли на слабо :-)

Ни одно доброе дело не должно остаться безнаказанным :)

--
Regards, LVT.



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

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.063 c
2-1274259171
Nathan
2010-05-19 12:52
2010.08.27
Работа с файлами


15-1265681360
brother
2010-02-09 05:09
2010.08.27
Береги клиента, бабло приносящего


15-1269254185
TpaTaTa
2010-03-22 13:36
2010.08.27
RichEdit


2-1272286875
Вик
2010-04-26 17:01
2010.08.27
Invalid floating point operation


10-1164104135
Layner
2006-11-21 13:15
2010.08.27
Передача строкового параметра в COM из HTML страницы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский