Интересно, как я могу скрыть заголовки TabSheets в компоненте PageControl. Я хочу создать создателя, например, создать своего чемпиона, где вы можете выбирать некоторые вещи на страницах. Вкладки будут меняться каждые 10 секунд по таймеру. В гугле нашел только как скрыть TabSheet(с содержимым). Я хочу скрыть только заголовок TabSheets, например, TabSheet1 и т.д. Я работаю в С++ Builder. Привет,
Как я могу скрыть заголовок вкладок PageControl в C++ Builder
Ответы (1)
Вы можете скрыть каждую страницу TPageControl
(свойство TabVisible
TabSheet
) и по-прежнему показывать Tabsheet
в коде, изменив свойства ActivePage
или ActivePageIndex
элемента управления страницей.
Таймер может вызывать SelectNextPage
. метод программного изменения активной страницы:
PageControl1->SelectNextPage(true, false);
РЕДАКТИРОВАТЬ
Простая форма (Form1
) с TPageControl
(как показано в дизайнере):
Код для скрытия заголовка:
void __fastcall TForm1::FormShow(TObject *Sender)
{
for (int i(0); i < PageControl1->PageCount; ++i)
PageControl1->Pages[i]->TabVisible = false;
// You can show the TabSheet programmatically changing the active page.
PageControl1->ActivePage = TabSheet1;
}
Код для выбора следующей страницы:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PageControl1->SelectNextPage(true, false);
}
Эффект волшебника (во время выполнения):
person
manlio
schedule
30.04.2015
Да, я знаю. Я вызываю метод SelectNextPage. У меня все еще есть заголовок TabSheet. Мне нужен только лист с содержимым без заголовка, например TabSheet1
- person Lukas; 30.04.2015
Изменить * Теперь у меня нет заголовков TabSheets, но я также не вижу содержимое TabSheets
- person Lukas; 30.04.2015
@Lukas Я добавил небольшой пример
- person manlio; 02.05.2015
Просто для протокола - у меня это не работало, пока у меня не было PageControl1->ActivePageIndex = 0; (или PageControl1->ActivePage = TabSheet1; как указано выше)
- person Reversed Engineer; 21.06.2017