Уважаемые, возник такой вопрос...
Есть вот такой сгенерированный UI файл:
/********************************************************************************
** Form generated from reading UI file 'AxisPropertyDlg.ui'
**
** Created: Wed 7. Apr 14:46:10 2010
** by: Qt User Interface Compiler version 4.6.2
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_AXISPROPERTYDLG_H
#define UI_AXISPROPERTYDLG_H
#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QDialog>
#include <QtGui/QGridLayout>
#include <QtGui/QHBoxLayout>
#include <QtGui/QHeaderView>
#include <QtGui/QSpacerItem>
#include <QtGui/QStackedWidget>
#include <QtGui/QToolButton>
#include <QtGui/QTreeView>
#include <QtGui/QWidget>
QT_BEGIN_NAMESPACE
class Ui_AxisPropertyDlg
{
public:
QGridLayout *gridLayout;
QTreeView *treeView;
QStackedWidget *stackedWidget;
QWidget *[b]page[/b];
QWidget *[b]page_2[/b];
QHBoxLayout *[b]horizontalLayout[/b];
QToolButton *btnAxisAdd;
QSpacerItem *[b]horizontalSpacer[/b];
QToolButton *btnAxisDependAdd;
QSpacerItem *[b]horizontalSpacer_2[/b];
QToolButton *btnAxisRemove;
void setupUi(QDialog *AxisPropertyDlg)
{
if (AxisPropertyDlg->objectName().isEmpty())
AxisPropertyDlg->setObjectName(QString::fromUtf8("AxisPropertyDlg"));
AxisPropertyDlg->resize(692, 546);
AxisPropertyDlg->setMinimumSize(QSize(660, 546));
gridLayout = new QGridLayout(AxisPropertyDlg);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
treeView = new QTreeView(AxisPropertyDlg);
treeView->setObjectName(QString::fromUtf8("treeView"));
gridLayout->addWidget(treeView, 0, 0, 1, 1);
stackedWidget = new QStackedWidget(AxisPropertyDlg);
stackedWidget->setObjectName(QString::fromUtf8("stackedWidget"));
stackedWidget->setMinimumSize(QSize(438, 493));
[b]page = new QWidget();[/b]
page->setObjectName(QString::fromUtf8("page"));
stackedWidget->addWidget(page);
[b]page_2 = new QWidget();[/b]
page_2->setObjectName(QString::fromUtf8("page_2"));
stackedWidget->addWidget(page_2);
gridLayout->addWidget(stackedWidget, 0, 1, 2, 1);
[b]horizontalLayout = new QHBoxLayout();[/b]
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
btnAxisAdd = new QToolButton(AxisPropertyDlg);
btnAxisAdd->setObjectName(QString::fromUtf8("btnAxisAdd"));
QIcon icon;
icon.addFile(QString::fromUtf8(":/images/operations/add.png"), QSize(), QIcon::Normal, QIcon::Off);
btnAxisAdd->setIcon(icon);
horizontalLayout->addWidget(btnAxisAdd);
[b]horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);[/b]
horizontalLayout->addItem(horizontalSpacer);
btnAxisDependAdd = new QToolButton(AxisPropertyDlg);
btnAxisDependAdd->setObjectName(QString::fromUtf8("btnAxisDependAdd"));
btnAxisDependAdd->setEnabled(false);
horizontalLayout->addWidget(btnAxisDependAdd);
horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
horizontalLayout->addItem(horizontalSpacer_2);
btnAxisRemove = new QToolButton(AxisPropertyDlg);
btnAxisRemove->setObjectName(QString::fromUtf8("btnAxisRemove"));
QIcon icon1;
icon1.addFile(QString::fromUtf8(":/images/operations/remove.png"), QSize(), QIcon::Normal, QIcon::Off);
btnAxisRemove->setIcon(icon1);
horizontalLayout->addWidget(btnAxisRemove);
gridLayout->addLayout(horizontalLayout, 1, 0, 1, 1);
QWidget::setTabOrder(treeView, btnAxisAdd);
QWidget::setTabOrder(btnAxisAdd, btnAxisDependAdd);
QWidget::setTabOrder(btnAxisDependAdd, btnAxisRemove);
retranslateUi(AxisPropertyDlg);
QMetaObject::connectSlotsByName(AxisPropertyDlg);
} // setupUi
void retranslateUi(QDialog *AxisPropertyDlg)
{
AxisPropertyDlg->setWindowTitle(QApplication::translate("AxisPropertyDlg", "\320\240\320\265\320\264\320\260\320\272\321\202\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265 \321\201\320\262\320\276\320\271\321\201\321\202\320\262: \320\236\321\201\320\270", 0, QApplication::UnicodeUTF8));
#ifndef QT_NO_TOOLTIP
btnAxisAdd->setToolTip(QApplication::translate("AxisPropertyDlg", "\320\224\320\276\320\261\320\260\320\262\320\270\321\202\321\214 \320\276\321\201\321\214", 0, QApplication::UnicodeUTF8));
#endif // QT_NO_TOOLTIP
btnAxisAdd->setText(QApplication::translate("AxisPropertyDlg", "...", 0, QApplication::UnicodeUTF8));
btnAxisDependAdd->setText(QApplication::translate("AxisPropertyDlg", "\320\224\320\276\320\261\320\260\320\262\320\270\321\202\321\214\320\267\320\260\320\262\320\270\321\201\320\270\320\274\321\203\321\216 \320\276\321\201\321\214", 0, QApplication::UnicodeUTF8));
#ifndef QT_NO_TOOLTIP
btnAxisRemove->setToolTip(QApplication::translate("AxisPropertyDlg", "\320\243\320\264\320\260\320\273\320\270\321\202\321\214 \320\276\321\201\321\214", 0, QApplication::UnicodeUTF8));
#endif // QT_NO_TOOLTIP
btnAxisRemove->setText(QApplication::translate("AxisPropertyDlg", "...", 0, QApplication::UnicodeUTF8));
} // retranslateUi
};
namespace Ui {
class AxisPropertyDlg: public Ui_AxisPropertyDlg {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_AXISPROPERTYDLG_H
Обратите внимание, на выделенное жирным шрифтом!
Например page = new QWidget();, память выделяется, однако указатель на родителя не передается. Вопрос: Когда будет удален page?
Если бы было сгенерировано page = new QWidget(AxisPropertyDlg); - другое дело! При вызове деструктора у AxisPropertyDlg вызывался бы деструктор page. А так, непонятно как будет удаляться.
Спасибо)