簡體   English   中英

QT在窗口中最大化窗口小部件

[英]QT Maximizing widget in window

我正在嘗試最大化我的應用程序,同時在MainWindow內最大化的侏儒。 我還需要小部件來響應主窗口的大小調整,嘗試了一些事情,但沒有完全正常工作。 任何想法?

謝謝

在此輸入圖像描述

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //this->setGeometry(50,50, 1280, 768);
    setWindowState(Qt::WindowMaximized);
    //MainWindow::showMaximized();
    m_pWebView = new QWebView(this);
    //set position and size
    m_pWebView->setGeometry(0,0,this->width(), this->height());
    m_pWebView->load(QUrl("http://csm.nathan"));
    //m_pWebView->show();
}

MainWindow::~MainWindow()
{
    delete ui;
}

通常當您在QtCreator中創建一個新項目時,您的QMainWindow中應該有一個“centralWidget”。

只需確保在其中使用QGridLayout:

this->centralWidget()->setLayout(new QGridLayout);

然后將您的QWebView添加到此小部件的布局:

this->centralWidget()->layout()->addWidget(m_pWebView);

只要您的WebView是網格中唯一的一個元素,這應該可以完成工作。

另一種解決方案是使用QtDesigner:

  • 首先,在窗口中添加您的webview或任何其他Widget
  • 然后單擊窗口背景
  • 然后單擊“網格中的布局”按鈕

這將完全相同,但存儲在.ui文件而不是.cpp文件中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM