簡體   English   中英

Qt無框架/無邊界窗口(如在Visual Studio UI中)

[英]Qt Frameless/Borderless Window (like in Visual Studio UI)

我正在嘗試在Qt 5.2 C ++中實現無框架窗口。

這個答案-對我來說將是完美的,但不再適用於Qt5- Windows上Qt上的無邊界窗口,支持原生功能:航空捕捉,DWM調整大小和最小化

我完成的工作是創建一個基本的MainWindow小部件,通過樣式表設置屬性,這幾乎是我想要的,除了幾件事。

這段代碼:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent, Qt::CustomizeWindowHint ), ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //this->setFixedSize(300, 450);
    this->statusBar()->setSizeGripEnabled(true);
    this->setStyleSheet("background-color: white; border: 1px solid red;");
    this->setWindowFlags(Qt::FramelessWindowHint);
    this->setAttribute(Qt::WA_TranslucentBackground, true);
}

會給我-幾乎-我想要的,主要問題是-

  1. 頂部有一些奇數條,看起來像這樣。 當我右鍵單擊欄,然后左鍵單擊復選框時,它消失了。 默認情況下如何禁用此功能? (請原諒第三者鏈接,StackOverflow不允許新手在此處托管圖片)

http://i57.tinypic.com/2iapqnn.png

  1. 如圖所示,只有側面邊框是1 px,頂部/底部邊框更像是4 px。 我還想刪除底部的奇數條(類似於頂部的奇數條,然后將其刪除)。 如何禁用底部欄,並確保所有邊框的寬度正好為1 px?

http://i62.tinypic.com/28qsnrk.png

我想要的是一個空白的,可調整大小的空白窗口,帶有1 px的紅色邊框。

非常感謝您的幫助。 祝你有美好的一天。

頂部有一些奇數條,看起來像這樣。 當我右鍵單擊欄,然后左鍵單擊復選框時,它消失了。 默認情況下如何禁用此功能? (請原諒第三者鏈接,StackOverflow不允許新手在此處托管圖片)

我是工具欄。 刪除它:在Qt Design視圖->對象列表->右鍵單擊mainToolBar,然后將其刪除!

如圖所示,只有側面邊框是1 px,頂部/底部邊框更像是4 px。 我還想刪除底部的奇數條(類似於頂部的奇數條,然后將其刪除)。 如何禁用底部欄,並確保所有邊框的寬度正好為1 px?

這是您的statusBar,與您對toolBar所做的相同。

暫無
暫無

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

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