Добрый день.
Проблема в следующем:
При создании менеджера размещения в конструкторе менеджер не отрабатывает.
Выдается в отладке такая штука.
QWidget::setLayout: Attempting to set QLayout "" on qarm "", which already has a layout
Уж что только не делал не работает и все тут. Рекомендации прочитать мануал и погуглить не нужны.
Имеется код
main
#include <qarm.h>
#include <QtGui>
#include <QtGui/QMainWindow>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
qarm q;
return app.exec();
};
хейдер
#ifndef QARM_H
#define QARM_H
#include <QtGui/QMainWindow>
class qarm : public QMainWindow
{
Q_OBJECT
public:
qarm(QWidget *parent = 0);
public slots:
int read_set();
};
#endif // QARM_H
код класса
#include <iostream>
#include <cstdlib>
#include "qarm.h"
#include <QtGui/QMainWindow>
#include <QPushButton>
#include <QDesktopWidget>
#include <QtGui>
//#include <QHBoxLayout>
#include "sysfunc.h"
qarm::qarm(QWidget *parent)
: QMainWindow(parent)
{
//Окно перекрывает весь рабочий стол
this->setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowStaysOnTopHint | Qt::ToolTip);
//Разрешение экрана
QDesktopWidget *d =QApplication::desktop();
int x=d->width();
int y=d->height();
std::cout << x<< " " << y << std::endl;
//Окно во весь экран
//this->setGeometry(0,0,x,y);
this->setGeometry(0,0,640,480);
//Кнопка выход временная
QPushButton *qb = new QPushButton("EXIT",this);
//qb->setGeometry(10,10,100,30);
connect(qb,SIGNAL(clicked()),this,SLOT(close()));
//Кнопка сетевого запроса настроек
QPushButton *qb2 = new QPushButton("SETTING",this);
//qb2->setGeometry(500,10,100,30);
connect(qb2,SIGNAL(clicked()),this,SLOT(read_set()));
QPushButton *button1 = new QPushButton("One");
QPushButton *button2 = new QPushButton("Two");
QPushButton *button3 = new QPushButton("Three");
QPushButton *button4 = new QPushButton("Four");
QPushButton *button5 = new QPushButton("Five");
QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(button1);
layout->addWidget(button2);
layout->addWidget(button3);
layout->addWidget(button4);
layout->addWidget(button5);
this->setLayout(layout);
this->show();
};
int qarm::read_set()
{
int result2;
result2 =lcon();
QString str2=QString("%1").arg(result2);
//str2.setNum(st.param1);
//ui->textEdit->append(str2);
std::cout << "result2 " << result2 << std::endl;
return 0;
};