Russian Qt Forum
Сентябрь 30, 2024, 20:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Олинаковые указатели связанные с несколькими вкладками объекта класса QTabWidget  (Прочитано 3815 раз)
daenux
Гость
« : Февраль 20, 2011, 16:53 »

Добрый вечер господа! Улыбающийся

Есть условие: "Использовать только QTabWidget";

И мне надо, что бы в нескольких вкладках объекта класса QTabWidget отображался один и тот же объект, т.е.:
Код:
ClassObject *cObject = new ClassObject();
QTabWidget *qTabWidget = new QTabWidget();
qTabWidget->addTab(cObject, "1");
qTabWidget->addTab(cObject, "2");
qTabWidget->addTab(cObject, "3");

Как добиться подобного результата?
Записан
BRE
Гость
« Ответ #1 : Февраль 20, 2011, 17:28 »

Как добиться подобного результата?
IMHO, никак.
При добавлении виджета на закладку, эта закладка назначается ему в качестве parent.
У виджета может быть только один родитель.

Расскажи чего ты хочешь добиться, может есть другой путь.
Записан
daenux
Гость
« Ответ #2 : Февраль 20, 2011, 17:32 »

Да я просто балуюсь...

Можно и QTabBar использовать, но мне его название не нравиться...

А обходного путя нет?
Записан
BRE
Гость
« Ответ #3 : Февраль 20, 2011, 17:34 »

А обходного путя нет?
Смотря куда он должен вывести.  Улыбающийся

Код
C++ (Qt)
QTabWidget *qTabWidget = new QTabWidget();
qTabWidget->addTab(new ClassObject(), "1");
qTabWidget->addTab(new ClassObject(), "2");
qTabWidget->addTab(new ClassObject(), "3");
 
Записан
daenux
Гость
« Ответ #4 : Февраль 20, 2011, 17:36 »

В таком случае, можно ли получить доступ из QTabWidget к определенному объекту ClassObject с возможностью редактирования его свойств?
Записан
daenux
Гость
« Ответ #5 : Февраль 20, 2011, 17:37 »

А то метод QTabWidget::widget() - константный...
Записан
daenux
Гость
« Ответ #6 : Февраль 20, 2011, 17:43 »

BRE - спасибо большое, я тогда в векторе создам ClassObject и потом отправлять буду в QTabWidget... Улыбающийся
Записан
Kolobok
Гость
« Ответ #7 : Февраль 20, 2011, 18:21 »

А то метод QTabWidget::widget() - константный...

чем это тебя смущает?
Записан
daenux
Гость
« Ответ #8 : Февраль 20, 2011, 23:23 »

Kolobok - да нет, все правильно - просто если бы этот метод был бы не константным, я этим воспользовался бы... Улыбающийся
Записан
BRE
Гость
« Ответ #9 : Февраль 20, 2011, 23:27 »

Kolobok - да нет, все правильно - просто если бы этот метод был бы не константным, я этим воспользовался бы... Улыбающийся
Ну так и воспользуйся.
Не забудь только привести QWidget к ClassObject (обрати внимание на qobject_cast<T>(...))
Записан
SimpleSunny
Гость
« Ответ #10 : Февраль 20, 2011, 23:47 »

Kolobok - да нет, все правильно - просто если бы этот метод был бы не константным, я этим воспользовался бы... Улыбающийся

Метод константный,так как не изменяет внутреннее состояние объекта, но возвращает полноценный, а не константный, указатель.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.124 секунд. Запросов: 21.