Qt C ++ QMenuBar в макете проблемы при прокрутке - PullRequest
0 голосов
/ 20 июля 2011

Я новичок в Qt и испытываю трудности с полосами прокрутки в QWidgets.У меня есть макет в виджете, и макет содержит QMenuBar.Область прокрутки связана с виджетом.Прокрутка работает нормально, но когда пользователь прокручивает вниз, Menubar исчезает из поля зрения.Есть ли способ сохранить меню наверху?

Буду признателен за любую помощь.

Спасибо.

Hi @ utdemir,

Спасибобыстрый ответ.Вот фрагмент кода с вашим предложением использовать QMainWindow.Это дало те же результаты.

MyWidget::MyWidget(QMainWindow *parent)
: QMainWindow(parent)
{
    main = new QWidget;       //Widget that contains the layout
    CreateMenu();
    scrollArea  = new QScrollArea;
    layout = new QVBoxLayout();

    //layout->setMenuBar(menuBar);
    this->setMenuBar(menuBar);
    this->resize(500,500);
    main->setLayout(layout);
    this->setCentralWidget(main);
    scrollArea->setWidget(this);
    scrollArea->setWidgetResizable(true);

    scrollArea->show();

    this->show();
}

1 Ответ

0 голосов
/ 20 июля 2011

Разобрался с решением проблемы.
Создано QMainWindow, которое содержит строку меню. Добавлен QWidget, который содержит макет. Область прокрутки связана с QWidget. Центральным виджетом главного окна является область прокрутки.

main->setLayout(layout);
this->setCentralWidget(scrollArea);
scrollArea->setWidget(main);
scrollArea->setWidgetResizable(true);
scrollArea->show();
this->show();

Спасибо за вашу помощь @ утдемир

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...