crossplatform.ru

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

> Qvector и QGridLayout
Andrewshkovskii
  опции профиля:
сообщение 5.9.2009, 22:06
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 351
Регистрация: 27.12.2008
Пользователь №: 467

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




Репутация:   1  


Давненько я здесь не бывал, всем привет!Вот возникла следующая проблема , небольшой примерчик понять не могу :
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui>
class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
    QGridLayout *gl;
    QVector <QPushButton*> btnVector;
    QPushButton *btni;
    public slots :
       void addNewBtn();
};
#endif // MAINWINDOW_H


mainwindow.cpp
#include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    gl = new QGridLayout;
    QPushButton *btn;
    btn = new QPushButton(this);
    btn->setText("add new btn");
    gl->addWidget(btn);
    connect (btn,SIGNAL(clicked()), this, SLOT(addNewBtn()));
}

MainWindow::~MainWindow()
{
}
void MainWindow::addNewBtn()
{
    this->btni = new QPushButton(0);
    this->btnVector.append(this->btni);
    this->btnVector.at(0)->setText("bla");
    this->gl->addWidget(this->btnVector.at(0));
}


Суть вот в чем : захотел я покать в QGridLayout, и решил тыкать в него QPushButton, да не простые, а из вектора. Только вот ничего не вышло из этого, и проблема видимо в моем недопонимании cpp.. в чем проблема ? :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 5.9.2009, 23:39
Сообщение #2


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

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

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




Репутация:   94  


Цитата(Andrewshkovskii @ 6.9.2009, 3:16) *
QMainWindow на QWidget и все вроде б заработало...странно.
Ха-ха, я туда даже и не посмотрел, иначеб проблему быстрее обнаружили.
Для QMainWindow нужно установить центральный виджет, ну а в него, в свою очередь, компоновщик :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 20.12.2024, 19:21