|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
автоматизация проги
Всем Привет!
есть PageControl1 на ней два dbgrid (в них одна и та же таблица, но один dbgrid не видим, для подсчётов), три кнопки, edit, несколько лейбов Вот вопрос, есть на PageControl1 несколько вкладок все по форме и кол-ву объектов одинаковы, только таблицы разные(но форма и параметры одинаковые), вот хочется сделать так, нажал на кнопку, создалась новая вкладка на PageControl1 и там все кнопки в таком же порядке как на первой и dbgrid с новой таблицей. короче копировать первую вкладку, но и таблица должна скопироваться (сразу очиститься,для ввода новых данных) и назваться по другому, ну вот вроде и всё. |
#2
|
|||
|
|||
не надо в этом случае PageControl. Там есть компонент (не помню как точно называется), который представляет из себя _только_ вкладки. При переключении или создании новой вкладки просто переключаешь dbgrid'ы на др. таблицу и profit.
|
#3
|
||||
|
||||
В принципе, можно и PageControl, просто при создании новой закладки передавать её как парента компонентам, что лежали на предыдущей табшитке. Вот пример динамического добавления вкладки
Код:
procedure TForm1.ButtonAddTabClick(Sender: TObject); begin with TTabSheet.Create(PageControl1) do begin Visible:= true; Caption:= 'Таблица ' + IntToStr(PageControl1.PageCount + 1); PageControl:= PageControl1; PageControl1.TabIndex:= TabIndex; PageControl1.OnChange(self); end; // with // Здесь код создания таблицы end; Код:
procedure TForm1.PageControl1Change(Sender: TObject); begin ButtonClose.Parent:= PageControl1.ActivePage; DBGrid1.Parent:= PageControl1.ActivePage; // и т.д. end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#4
|
|||
|
|||
спасибо, так можно и все компоненты добавить програмно, с определёнными координатами, будем пробовать.
|