Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
alexey31415
59 / 59 / 7
Регистрация: 16.05.2010
Сообщений: 632
1

Не создаётся виджет

04.05.2014, 00:33. Просмотров 514. Ответов 3
Метки нет (Все метки)

Сделал 3 из 4 виджетов, используемых в приложении, вместо 4-го пока использую пустой виджет, чтобы просто место занимал и видно было положение других виджетов.
Поначалу виджет создавался, но потом почему-то перестал, причём виджет создаётся, но не добавляется в компоновку.

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 m_ParentWidget      = new QWidget;
 
    m_ProjectTree       = new ProjectTree(m_ParentWidget);
    m_CriteriaTable     = new CriteriaTable(m_ParentWidget);
    m_AlgorithmsTable   = new AlgorithmsTable(m_ParentWidget);
    m_ChartWidget       = new ChartWidget(m_ParentWidget);
 
    QHBoxLayout* horLayout = new QHBoxLayout;
 
    horLayout->addWidget(m_ProjectTree->GetParentWidget());
 
    QVBoxLayout* verLayout = new QVBoxLayout;
 
    verLayout->addLayout(m_CriteriaTable->GetLayout());
    verLayout->addLayout(m_AlgorithmsTable->GetLayout());
 
    horLayout->addLayout(verLayout);
    horLayout->addWidget(m_ChartWidget->GetParentWidget()); // не добавляется
 
    m_ParentWidget->setLayout(horLayout);
ChartWidget.cpp
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ChartWidget::ChartWidget(QWidget *pwgt) :
    QWidget(pwgt),
    m_Width(470),
    m_Height(570)
{
    m_Chart = new QWidget(pwgt);
 
    m_Chart->setSizeIncrement(m_Width, m_Height);
 
    m_Layout = new QVBoxLayout;
    m_Layout->addWidget(m_Chart);
}
 
QWidget* ChartWidget::GetParentWidget(){
    return m_Chart;
}
 
QVBoxLayout *ChartWidget::GetLayout(){
    return m_Layout;
}


Заодно ещё спрошу, что не так в коде, в котором я добавляю меню к кнопке.
С ним проект собирается, но при старте приложение падает.
Кликните здесь для просмотра всего текста
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    m_btnChooseSolutions = new QPushButton;
    m_btnChooseSolutions->setText(tr("Choose solutions"));
 
    QMenu* solMenu     = new QMenu(pwgt);
    connect(solMenu, SIGNAL(triggered(QAction*)),
            this, SLOT(btnChooseSolutionsHandler(QAction*)));
 
    QAction* act    = solMenu->addAction("Solution 1");
    act->setCheckable(true);
 
    act = solMenu->addAction("Solution 2");
    act->setCheckable(true);
 
    act = solMenu->addAction("Solution 1");
    act->setCheckable(true);
 
    m_btnChooseSolutions->setMenu(solMenu);
 
    QMenu* algMenu  = new QMenu(pwgt);
    connect(algMenu, SIGNAL(triggered(QAction*)),
            this, SLOT(btnChooseAlgorithmsHandler(QAction*)));
 
    act = algMenu->addAction("Algorithm 1");
    act->setCheckable(true);
 
    act = algMenu->addAction("Algorithm 2");
    act->setCheckable(true);
 
    act = algMenu->addAction("Algorithm 3");
    act->setCheckable(true);
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2014, 00:33
Ответы с готовыми решениями:

Скрывающийся виджет Qt
Народ, подскажите реализацию идею. Хочу сделать скрывающийся виджет, т.е. при...

Виджет KeySequenceEdit
Привет, хочу сделать глобальные хот-кеии обработку действий для них. Задавать...

Подскажите виджет
Нужно где-то отобразить картинку и нужно чтобы можно было выделить ее кусок...

Не закрывается виджет
Есть виджет, инстанс которого создается без родительского виджета в...

Скрытый виджет
Добрый день! У меня есть список камер, у каждой камеры есть список потоков....

3
RazrFalcon
1388 / 1245 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
04.05.2014, 02:22 2
Цитата Сообщение от alexey31415 Посмотреть сообщение
C++ (Qt)
1
horLayout->addWidget(m_ChartWidget->GetParentWidget()); // не добавляется
GetParentWidget случаем не 0 возвращает?

Цитата Сообщение от alexey31415 Посмотреть сообщение
С ним проект собирается, но при старте приложение падает.
Деббагером проверьте на какой строке падает.
0
alexey31415
59 / 59 / 7
Регистрация: 16.05.2010
Сообщений: 632
04.05.2014, 08:12  [ТС] 3
Сейчас приложение выглядит так.
Забыл добавить при создании темы.
0
Миниатюры
Не создаётся виджет  
alexey31415
59 / 59 / 7
Регистрация: 16.05.2010
Сообщений: 632
04.05.2014, 11:49  [ТС] 4
Цитата Сообщение от RazrFalcon Посмотреть сообщение
GetParentWidget случаем не 0 возвращает?
Виджет создаётся.

Добавлено через 15 минут
Проблема была в следующей строчке.
C++ (Qt)
1
m_Chart->setSizeIncrement(m_Width, m_Height);

Не по теме:

Всё-таки надо ложиться спать, когда тянет в сон, а не сидеть до последнего, пытаясь найти в чём же дело

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.05.2014, 11:49

Qt виджет таблицы
Всем привет. Извиняюсь за ламерский вопрос. Имеется ли в Qt сетка, такая...

Виджет календарь
Всем доброго времени суток, подскажите как реализовать такой метод: У меня на...

Виджет на виджете
Есть некоторый QGLWidget и есть QWidget с несколькими QLabel. Мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru