//widget.h
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private:
QGridLayout *grid;
QHBoxLayout *hbox;
QPushButton *record;
QPushButton *query;
QLineEdit *money; QLabel *label;
};
//widget.cpp
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
grid = new QGridLayout(this);
label = new QLabel("Money:");
grid->addWidget(label, 0, 0, 1,1);
money = new QLineEdit;
grid->addWidget(money, 0, 1, 1, 1);
hbox = new QHBoxLayout();
query = new QPushButton("Query");
record = new QPushButton("Record");
hbox->addWidget(query);
hbox->addWidget(record);
grid->addLayout(hbox, 1, 0, 1, 2);}
Widget::~Widget()
{
delete grid;
//delete hbox; //去了注意就会发生内存错误
delete record;
delete query;
delete money;
}
不知道为什么?后来测试了一下,感觉删除grid时hbox也删除了,不知道是不是这个?
有知道的给个肯定!!!!~~~~~~~~~~
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private:
QGridLayout *grid;
QHBoxLayout *hbox;
QPushButton *record;
QPushButton *query;
QLineEdit *money; QLabel *label;
};
//widget.cpp
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
grid = new QGridLayout(this);
label = new QLabel("Money:");
grid->addWidget(label, 0, 0, 1,1);
money = new QLineEdit;
grid->addWidget(money, 0, 1, 1, 1);
hbox = new QHBoxLayout();
query = new QPushButton("Query");
record = new QPushButton("Record");
hbox->addWidget(query);
hbox->addWidget(record);
grid->addLayout(hbox, 1, 0, 1, 2);}
Widget::~Widget()
{
delete grid;
//delete hbox; //去了注意就会发生内存错误
delete record;
delete query;
delete money;
}
不知道为什么?后来测试了一下,感觉删除grid时hbox也删除了,不知道是不是这个?
有知道的给个肯定!!!!~~~~~~~~~~