скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Динамические PageControl и TabSheet




var
  T: TTabSheet;
  P: TPageControl;
begin
  // Создаем PageControl
  // При создании получаем ссылку на PageControl, чтобы в дальнейшем на него ссылаться.
  P := TPageControl.Create(application);
  with P do
  begin
    Parent := Form1; // устанавливаем его как элемент управления формы.
    Top := 30;
    Left := 30;
    Width := 200;
    Height := 150;
  end; // with TPageControl

  // Создаем 3 страницы
  T := TTabSheet.Create(P);
  with T do
  begin
    Visible := True;
      // Это необходимо, или форма не будет корректно перерисовываться
    Caption := 'Страница 1';
    PageControl := P; // Назначаем Tab в Page Control
  end; // with

  T := TTabSheet.Create(P);
  with T do
  begin
    Visible := True;
      // Это необходимо, или форма не будет корректно перерисовываться
    Caption := 'Страница 2';
    PageControl := P; // Назначаем Tab в Page Control
  end; // with

  T := TTabSheet.Create(P);
  with T do
  begin
    Visible := True;
      // Это необходимо, или форма не будет корректно перерисовываться
    Caption := 'Страница 3';
    PageControl := P; // Назначаем Tab в Page Control
  end; // with

  // Создаем 3 кнопки, 1 на страницу
  with tbutton.create(application) do
  begin
    Parent := P.Pages[0]; // "Указываем" кнопке родительскую страницу
    Caption := 'Привет, страница 1';
    Left := 0;
    Top := 0;
  end; // with

  with tbutton.create(application) do
  begin
    Parent := P.Pages[1]; // "Указываем" кнопке родительскую страницу
    Caption := 'Привет, страница 2';
    Left := 50;
    Top := 50;
  end; // with

  with tbutton.create(application) do
  begin
    Parent := P.Pages[2]; // "Указываем" кнопке родительскую страницу
    Caption := 'Привет, страница 3';
    Left := 100;
    Top := 90;
  end; // with

  // Это должно быть сделано, или Tab первоначально не синхронизируется
  // с правильной страницей. Только в случае, если у вас более чем одна страница.
  P.ActivePage := P.Pages[1];
  P.ActivePage := P.Pages[0]; // Реально показываемая страница
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook