Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Динамические формы

1.9K
07 апреля 2003 года
aciDroN
25 / / 07.04.2003
У меня такая проблема (я только начинаю кодить в билдере):
Есть главная форма Form1, есть вторая форма, на которой размещено Memo. Форма 2 не создается при старте (нет Application->CreateForm). При нажатии на кнопку на главной фоме создается форма 2:
A = new TForm2 (this);
A->Show ();
Я хочу, чтобы при ресайзе динамически созданной формы менялся размер Memo. Как написать обработчик OnResize в классе TForm2?
443
07 апреля 2003 года
REmindER
292 / / 23.03.2003
Цитата:
Originally posted by aciDroN
У меня такая проблема (я только начинаю кодить в билдере):
Есть главная форма Form1, есть вторая форма, на которой размещено Memo. Форма 2 не создается при старте (нет Application->CreateForm). При нажатии на кнопку на главной фоме создается форма 2:
A = new TForm2 (this);
A->Show ();
Я хочу, чтобы при ресайзе динамически созданной формы менялся размер Memo. Как написать обработчик OnResize в классе TForm2? :(


Вообще, что такое TForm2? Если я правильно понимаю, что можно так:

void __fastcall DynamicOnResize(TObject *);

...

A->OnResize = DynamicOnResize;

...

void __fastcall DynamicOnResize(TObject *Sender)
{
...
}

1.9K
07 апреля 2003 года
aciDroN
25 / / 07.04.2003
я имел в виду следующее - есть кнопка, при нажатии на неё создается ещё одна форма с Memo. Сколько раз кнопку нажмут, столько и форм. И надо по ресайзу формы ресайзить и Memo...
Я пробовал так:

void __fastcall TForm2::FormResize(TObject *Sender)
{
((TForm2*)Sender)->Memo1->Width = ((TForm2*)Sender)->Width - 20;
((TForm2*)Sender)->Memo1->Height = ((TForm2*)Sender)->Height - 50;

}
это работает...
но надо также обработчик на Memo, который на TForm2..А вот как к нему обращаться?
((TForm2*)Sender)->Memo так не получается, Sender уже не тот :(
---
во, только что получилось вот так
на OnActivate TForm2 прописал
Form2 = ((TForm2*)Sender);
а затем уже как обычно обращаюсь с Memo....

Правильно ли так?


860
07 апреля 2003 года
Abell2000
138 / / 15.01.2003
Цитата:
Originally posted by aciDroN
я имел в виду следующее - есть кнопка, при нажатии на неё создается ещё одна форма с Memo. Сколько раз кнопку нажмут, столько и форм. И надо по ресайзу формы ресайзить и Memo...
Я пробовал так:

void __fastcall TForm2::FormResize(TObject *Sender)
{
((TForm2*)Sender)->Memo1->Width = ((TForm2*)Sender)->Width - 20;
((TForm2*)Sender)->Memo1->Height = ((TForm2*)Sender)->Height - 50;

}
это работает...
но надо также обработчик на Memo, который на TForm2..А вот как к нему обращаться?
((TForm2*)Sender)->Memo так не получается, Sender уже не тот :(
---
во, только что получилось вот так
на OnActivate TForm2 прописал
Form2 = ((TForm2*)Sender);
а затем уже как обычно обращаюсь с Memo....

Правильно ли так?


Че то я сути проблемы не вижу, или плохо смотрю или плохо объясняешь, вот для Form2 обработчик:
void __fastcall TForm2::FormResize(TObject *Sender)
{
Memo1->Width=this->Width-20;
Memo1->Height=this->Height-50;
}
А что у тебя за проблемс с Memo не понял?

1.9K
07 апреля 2003 года
aciDroN
25 / / 07.04.2003
Цитата:
Originally posted by Abell2000

Че то я сути проблемы не вижу, или плохо смотрю или плохо объясняешь, вот для Form2 обработчик:
void __fastcall TForm2::FormResize(TObject *Sender)
{
Memo1->Width=this->Width-20;
Memo1->Height=this->Height-50;
}
А что у тебя за проблемс с Memo не понял?


что-то я намудрил, действительно так же просто всё :)
ещё раз подтверждается истина - "утро вечера мудренее"..
спасибо всем.

358
07 апреля 2003 года
moonmike
423 / / 18.10.2002
Цитата:
Originally posted by aciDroN

что-то я намудрил, действительно так же просто всё :)
ещё раз подтверждается истина - "утро вечера мудренее"..
спасибо всем.


А Memo1->Align = alClient;
ставить не пробовал?Тогда и с OnResize не придется заморачиваться. Если не надо на всю форму раскрывать то тогда есть такая вещь как
Anchors.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог