Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
ВнизPageControl Найти похожие ветки
← →
333 (2005-12-04 20:45) [0]Вопрос в следующем. На форме находятся 3 кнопки и 1 Pagecontrol. Как по нажатию на 1 кнопку создавать скажем 3 вкладки на PageControl, по нажатию на вторую кнопку 5 вкладок и т.д. Причем на каждой из вкладок должны находиться разные компоненты (label, edit, memo, ListBox и т.д.)
может можно как то создать все панели заранее и вызывать каждую панель по нажатию на определенную кнопку. Заранее спасибо
← →
SergGG © (2005-12-05 12:18) [1]Если я правильно понял, то так:
TabSheets:array of TTabSheet;
Lables :array of TLabel;
Edits :array of TEdit;
Memos:array of TMemo;
ListBoxs:array of TListBox;
implementation
{$R *.dfm}
procedure TForm1.AddTabSh;
var i:integer;
begin
SetLength(TabSheets,count);
SetLength(Lables,count);
SetLength(Edits,count);
SetLength(Memos,count);
SetLength(ListBoxs,count);
for i:=0 to count-1 do
begin
TabSheets[i]:=TTabSheet.Create(self);
TabSheets[i].Parent:=PageControl1;
TabSheets[i].PageControl:=PageControl1;
TabSheets[i].Caption:=IntToStr(i);
Lables[i]:=TLabel.Create(self);
Lables[i].Parent:=TabSheets[i];
Lables[i].Caption:="Lable"+IntToStr(i);
Edits[i]:=TEdit.Create(self);
Edits[i].Parent:=TabSheets[i];
Edits[i].Left:=100;
Edits[i].Text:="Edit"+IntToStr(i);
Memos[i]:=TMemo.Create(self);
Memos[i].Parent:=TabSheets[i];
Memos[i].Left:=200;
Memos[i].Lines.Add("Memo"+IntToStr(i));
ListBoxs[i]:=TListBox.Create(self);
ListBoxs[i].Parent:=TabSheets[i];
ListBoxs[i].Left:=300;
ListBoxs[i].Items.Add("listBox"+IntToStr(i));
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
AddTabSh(3);
end;
← →
Плохиш © (2005-12-05 13:09) [2]
> 333 (04.12.05 20:45)
Если количество вкладок и набор компонентов, отображаемый на них, известны зарание, то создать их при проектировании, а в процессе работы переключать свойство TabVisible у вкладок.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.014 c