crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Прикрепляемый виджет, как правильно прикрепить?
AD
  опции профиля:
сообщение 17.6.2008, 14:52
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Ну собственно вот картинки на которых видна проблема:
[attachment=113:1.JPG]

[attachment=114:2.JPG]

На первой картинке слева виджет с QTreeWidget прикреплен. Как сделать, чтобы этот виджет был явно виден?

Вот код создания прикрепляемого виджета:
/// Создание прикрепляемых виджетов
void TLV::createDockWidgets()
{
    QDockWidget* dock = new QDockWidget(this);
    dock -> setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
    treePhaseView = new QTreeWidget(this);
    treePhaseView->setObjectName(QString::fromUtf8("treePhaseView"));
    treePhaseView->headerItem()->setText(0, QApplication::translate("TLVClass", "", 0, QApplication::UnicodeUTF8));
    dock -> setWidget(treePhaseView);
    addDockWidget(Qt::LeftDockWidgetArea, dock);
}


Вот код, сгенеренный создания других элементов окна!
/// Инициализация и установка нужных размеров окна приложения
void Ui_TLVClass::setupUi(QMainWindow *TLVClass)
{
    if (TLVClass->objectName().isEmpty())
        TLVClass->setObjectName(QString::fromUtf8("TLVClass"));
    TLVClass->resize(942, 776);
    QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
    sizePolicy.setHorizontalStretch(0);
    sizePolicy.setVerticalStretch(0);
    sizePolicy.setHeightForWidth(TLVClass->sizePolicy().hasHeightForWidth());
    TLVClass->setSizePolicy(sizePolicy);
    TLVClass->setMinimumSize(QSize(200, 200));
    centralWidget = new QWidget(TLVClass);
    centralWidget->setObjectName(QString::fromUtf8("centralWidget"));
    gridLayout = new QGridLayout(centralWidget);
    gridLayout->setSpacing(6);
    gridLayout->setMargin(11);
    gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
    trackView = new QTrackWidget(centralWidget);
    trackView->setObjectName(QString::fromUtf8("trackView"));
    sizePolicy.setHeightForWidth(trackView->sizePolicy().hasHeightForWidth());
    trackView->setSizePolicy(sizePolicy);
    trackView->setMinimumSize(QSize(160, 200));

    gridLayout->addWidget(trackView, 0, 0, 1, 1);

    TLVClass->setCentralWidget(centralWidget);
    menuBar = new QMenuBar(TLVClass);
    menuBar->setObjectName(QString::fromUtf8("menuBar"));
    menuBar->setGeometry(QRect(0, 0, 942, 21));
    TLVClass->setMenuBar(menuBar);

    retranslateUi(TLVClass);
    QMetaObject::connectSlotsByName(TLVClass);
}

/// Оглавление окна приложения
void Ui_TLVClass::retranslateUi(QMainWindow *TLVClass)
{
    TLVClass->setWindowTitle(QApplication::translate("TLVClass", "TransasLogView", 0, QApplication::UnicodeUTF8));
    Q_UNUSED(TLVClass);
}

Сможете подсказать в чем ошибочка? Делал по приведенному примеру в примерах Qt!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 17.6.2008, 18:52
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Убей лишние компоновщики и поновой:
во-превых,
выдели вложеный виджет в доквиджет, установи требуемый МАКСИМАЛЬНЫЙ размер по горизонтали, установи политику по горизонтали фиксированой;
во-вторых,
выдели доквиджет, нажми кнопку подогнать размер, установи политику горизонтального размера фиксированой;
в-третьих,
Выдели виджет родительский для дока и твоего графика, нажми кнопку горизонтальной компоновки.

Поидее все должно стать путем, навсякий случай тестовый ГУЙ Прикрепленный файл  dock.zip ( 651 байт ) Кол-во скачиваний: 211
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- AD   Прикрепляемый виджет   17.6.2008, 14:52
- - AD   Другого решения не нашел, как делать через дизайне...   17.6.2008, 17:39
- - Litkevich Yuriy   ну подсмотри как дизайнер это делает (uic my.ui -o...   17.6.2008, 18:00
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 19:00...   17.6.2008, 18:04
- - Litkevich Yuriy   а файлик прикрепить можешь, который ui, и описать ...   17.6.2008, 18:13
- - sploid   а форму можешь выложить?   17.6.2008, 18:18
- - Litkevich Yuriy   Цитата(AD @ 17.6.2008, 21:39) правильно р...   17.6.2008, 18:22
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 19:22...   17.6.2008, 18:29
- - Litkevich Yuriy   во-превых, добавь компоновщик в доквиджет, выдели ...   17.6.2008, 18:35
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 19:35...   17.6.2008, 18:40
- - Litkevich Yuriy   Убей лишние компоновщики и поновой: во-превых, выд...   17.6.2008, 18:52
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 19:52...   17.6.2008, 18:57
- - Litkevich Yuriy   тот на который ты доквиджет кладешь короче косяче...   17.6.2008, 19:08
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 20:08...   17.6.2008, 19:13
- - Litkevich Yuriy   а как сделал? вот я переделал в редакторе (текстов...   17.6.2008, 19:37
|- - AD   Цитата(Litkevich Yuriy @ 17.6.2008, 20:37...   17.6.2008, 19:43
- - Litkevich Yuriy   а толку то, если ты allowedAreas dockWidgetArea в ...   17.6.2008, 20:03


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.11.2024, 12:12