среда, 4 мая 2011 г.

Структура QT приложения.QMainWindow

class TopLevel : public QMainWindow
{
    Q_OBJECT
public:
    TopLevel( QWidget *parent = 0);
    virtual ~TopLevel();
private:
// следующее окно или слой , кому как лучше 
    KAsteroidsView *view;
}
TopLevel::TopLevel( QWidget *parent)
    : QMainWindow(parent)
{
QWidget *border = new QWidget( this );
// настройка палитры по умолчанию 
    QPalette palette;
    palette.setColor(border->backgroundRole(), Qt::black);
    border->setPalette(palette);
// позиция в центр
    setCentralWidget( border );
    QVBoxLayout *borderLayout = new QVBoxLayout( border );
    borderLayout->addStretch( 1 );
// делаем Layout и тоже позицируем в центр 
    QWidget *mainWin = new QWidget( border );
    mainWin->setFixedSize(640, 480);
// делаем фиксированный размер 
    borderLayout->addWidget( mainWin, 0, Qt::AlignHCenter );
// добаляем в Layout основной слой отображения mainWin
    borderLayout->addStretch( 1 );

}
В этой части делаем инициализацию ТОП экрана (1 level) что бы добавить другое "окно"
с отдельными Сигналами и Слотами

...
        view = new KAsteroidsView( mainWin );
    view->setFocusPolicy( Qt::StrongFocus );
}

Комментариев нет:

Отправить комментарий