Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/36: Рейтинг темы: голосов - 36, средняя оценка - 4.78
17 / 14 / 6
Регистрация: 21.04.2009
Сообщений: 65
1

Динамическое добавление вкладок в TPageControl

22.04.2009, 03:38. Показов 6944. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Возможно ли добавление вкладок в TPageControl во время исполения программы?
Если да, то как после этого на созданную вкладку добавить TEdit (ну или любой другой компонент)?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2009, 03:38
Ответы с готовыми решениями:

Динамическое создание вкладок TPageControl
Думаю, что тема уже стара, но конкретно у меня не получается добавить даже одну вкладку. Вот...

TPageControl - Как изменить ширину вкладок
Как изменить ширину вкладок??? Как сделать чтобы например три вкладки были одинаковой ширины и...

StringGrid динамическое добавление строк
Добрый день, есть программа : Выводит на экран имя файла,размер файла,дату создания,контрольную...

Динамическое добавление элементов в массив
Требуется создать массив, размерностью в количество десятичных цифр, введенных с клавиатуры и...

5
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.04.2009, 09:23 2
mustss, главное - это правильно указать созданному элементу родителя, он и определяет положение компонентов на форме, а создается как и любой другой объект через new...
1
43 / 10 / 1
Регистрация: 20.04.2009
Сообщений: 32
22.04.2009, 12:48 3
Так ТО:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
TMemo *crl=new TMemo(this);
 TTabSheet *crl1=new TTabSheet(this);
// crl->Parent=this;
 crl1->Parent=this;
 crl1->PageControl=PageControl1;
 crl1->Caption="Открытка!";
 crl->Parent=crl1;
 crl1->Align=taCenter;
 crl->Text=Form1->Memo1->Text;
 crl->Left=8;
 crl->Top=8;
 crl->Height=160;
 crl->Width=310;
 crl->Alignment=taCenter;
 crl->Font->Color=clAqua;
 crl->Font->Size=34;
 crl->Font->Name="ArialBlack";
 {
  if(cb==0)
  {crl->Color=clYellow;}
  else{crl->Color=Form1->ColorDialog1->Color;}
 }
 crl1->BorderWidth=10;
 crl1->Enabled=false;
1
17 / 14 / 6
Регистрация: 21.04.2009
Сообщений: 65
22.04.2009, 13:15  [ТС] 4
Цитата Сообщение от WooDooMan Посмотреть сообщение
mustss, главное - это правильно указать созданному элементу родителя, он и определяет положение компонентов на форме, а создается как и любой другой объект через new...
Пробовал, не получается. Можно пример? Причём мне интересно именно добавление вклади в ТТабКонтрол, или в ТПэйджКонтрол.

Понимаю, что задаю в общем, глупые вопросы, но пишу первую прогу на биледе. В любом случае благодарю за потраченное на меня время.

Добавлено через 2 минуты 57 секунд
Цитата Сообщение от marty0701 Посмотреть сообщение
Так ТО:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
TMemo *crl=new TMemo(this);
 TTabSheet *crl1=new TTabSheet(this);
// crl->Parent=this;
 crl1->Parent=this;
 crl1->PageControl=PageControl1;
 crl1->Caption="Открытка!";
 crl->Parent=crl1;
 crl1->Align=taCenter;
 crl->Text=Form1->Memo1->Text;
 crl->Left=8;
 crl->Top=8;
 crl->Height=160;
 crl->Width=310;
 crl->Alignment=taCenter;
 crl->Font->Color=clAqua;
 crl->Font->Size=34;
 crl->Font->Name="ArialBlack";
 {
  if(cb==0)
  {crl->Color=clYellow;}
  else{crl->Color=Form1->ColorDialog1->Color;}
 }
 crl1->BorderWidth=10;
 crl1->Enabled=false;
Благодарю, попробовал возникли вопросы:
  1. для выполнения кода на форме должны находится ТМемо, ТПэйджКонтрол, и КолорДиалог, я правильно понял? Без них не идёт, даёт ошибки.
  2. что такое "cb"
0
43 / 10 / 1
Регистрация: 20.04.2009
Сообщений: 32
22.04.2009, 17:41 5
C++
1
2
3
4
5
6
7
TTabSheet *crl1=new TTabSheet(this);
 crl1->Parent=this;
 crl1->PageControl=PageControl1;
 crl1->Caption="Открытка!";
 crl1->Align=taCenter;
 crl1->BorderWidth=10;
 crl1->Enabled=false;
Просто пример ведь давал тебе это из моей лабы. Вот урезанный пример, просто с pagecontrol. пользуйся

Добавлено через 2 минуты 53 секунды
Вот тут:
C++
1
crl - > Parent=crl1;
и происходит добавление любого элемента на ранее динамически созданную страницу. Просто для нового динамически созданного объекта(у меня memo, у тебя Edit и т.д.) указываешь родителем созданную до этого динамически страницу! Вот так
2
17 / 14 / 6
Регистрация: 21.04.2009
Сообщений: 65
22.04.2009, 21:27  [ТС] 6
Цитата Сообщение от marty0701 Посмотреть сообщение
C++
1
2
3
4
5
6
7
TTabSheet *crl1=new TTabSheet(this);
 crl1->Parent=this;
 crl1->PageControl=PageControl1;
 crl1->Caption="Открытка!";
 crl1->Align=taCenter;
 crl1->BorderWidth=10;
 crl1->Enabled=false;
Спасибо.
Чуть-чуть переделал код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    int i;
    TTabSheet *crl1=new TTabSheet(this);
    TMemo *crl=new TMemo(this);
    crl1->Parent=this;
    crl1->PageControl=PageControl1;
    crl1->Caption="Открытка!";
    i=crl1->TabIndex;
    crl1->PageControl->Pages[i];
    crl1->PageControl->ActivePage->PageIndex=i;
    crl->Parent=crl1;
    crl->Left=8;
    crl->Top=8;
    crl->Height=50;
    crl->Width=100;
    crl->Alignment=taCenter;
    crl->Font->Color=clAqua;
    crl->Font->Size=34;
    crl->Font->Name="ArialBlack";
}
На форме КомандБатон и пустой ПэйджКонтрол. Жмем на кнопку и после этого в ПэйджКонтрол добавляется страница с ТекстЭдитом.
0
22.04.2009, 21:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2009, 21:27
Помогаю со студенческими работами здесь

Динамическое добавление объектов на форму
Задача такая: Добавить n элементов типа checkBox. n вводится в edit Нашёл на форуме такой код. Вот...

Динамическое добавление объектов разных типов
Цель следующая, хочу сделать что-то вроде категорий (лейблы) и подкатегорий(чекбоксы). ...

StringGrid: динамическое добавление строк и назначение типа столбцов
Доброго дня! Есть ли StringGrid, которому можно было задать тип конкретной ячейки (или всего...

Раскрасить ярлычки TPageControl
Привет всем! Хочется раскрасить в разные цвета ярлычки листов объектов TPageControl. Всё, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru