国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Qt控件之QMdiArea】介紹及使用

這篇具有很好參考價值的文章主要介紹了【Qt控件之QMdiArea】介紹及使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

描述

QMdiArea小部件提供了一個區(qū)域,用于顯示MDI窗口。QMdiArea的功能類似于MDI窗口的窗口管理器。例如,它在自身上繪制和排列管理的窗口,可以按級聯(lián)或平鋪模式排列它們。通常,QMdiArea被用作QMainWindow的中心小部件,用于創(chuàng)建MDI應用程序,但也可以放置在任何布局中。下面的代碼向主窗口添加了一個MDI區(qū)域:

QMainWindow *mainWindow = new QMainWindow;
mainWindow->setCentralWidget(mdiArea);

與頂級窗口的窗口管理器不同,QMdiArea支持所有窗口標志(Qt::WindowFlags),只要這些標志被當前小部件樣式支持。如果某個特定的標志在樣式中不受支持(如WindowShadeButtonHint),您仍然可以使用showShaded()來收起窗口。

以上這段話理解就是:
QMdiArea(一個Qt庫中的類,用于創(chuàng)建多文檔界面(MDI)應用程序的主窗口區(qū)域)支持所有的窗口標志(Qt::WindowFlags),但是這些標志是否能被正確使用還取決于當前窗口部件(Widget)的樣式是否支持這些標志。有些窗口標志可能在某些樣式中不被支持,比如“WindowShadeButtonHint”。

“WindowShadeButtonHint”這個窗口標志是用來表示窗口是否有一個按鈕可以用來控制窗口的陰影效果的。但是,如果這個標志在當前使用的樣式中不被支持,也就是說,即使你設置了這個標志,你可能也看不到相應的陰影按鈕。

然而,盡管這個標志在樣式中不受支持,你仍然可以使用showShaded()函數(shù)來收起(或展開)窗口。也就是說,盡管你可能看不到陰影按鈕,但是你仍然可以通過代碼來控制窗口的陰影效果。

總的來說,這句話是在說明QMdiArea的窗口標志支持和樣式的關系,以及當某些標志不被樣式支持時的處理方式。

QMdiArea中,子窗口是QMdiSubWindow的實例??梢允褂?code>addSubWindow()將它們添加到MDI區(qū)域中。通常,會將一個QWidget作為內(nèi)部小部件傳遞給此函數(shù),但也可以直接傳遞一個QMdiSubWindow。此類繼承自QWidget,您可以像處理普通頂級窗口一樣使用相同的API進行編程。QMdiSubWindow還具有特定于MDI窗口的行為。有關更多詳細信息,請參閱QMdiSubWindow類描述。

當子窗口獲得鍵盤焦點或調(diào)用setFocus()時,它將變?yōu)榛顒哟翱?。用戶可以通過通常的方法來激活窗口。當活動窗口更改時,MDI區(qū)域會發(fā)出subWindowActivated()信號,activeSubWindow()函數(shù)返回活動子窗口。

方便的函數(shù)subWindowList()返回所有子窗口的列表。例如,這些信息可以用于彈出菜單中包含窗口列表的情況。

子窗口按當前的窗口順序進行排序。這用于subWindowList()以及activateNextSubWindow()activatePreviousSubWindow(),也用于使用cascadeSubWindows()tileSubWindows()級聯(lián)或平鋪窗口的情況。

QMdiArea提供了兩種內(nèi)置的子窗口布局策略:cascadeSubWindows()tileSubWindows()。它們都是槽函數(shù),并且可以輕松地連接到菜單項。
【Qt控件之QMdiArea】介紹及使用,Qt編程,Qt記錄,qt,服務器,開發(fā)語言

常用函數(shù)

以下是QMdiArea的常用函數(shù)、信號和槽的介紹:

成員函數(shù)
  • addSubWindow(QWidget *widget, Qt::WindowFlags flags = Qt::EmptyFlag):將一個QWidget添加為子窗口,并返回對應的QMdiSubWindow實例。
  • removeSubWindow(QWidget *widget):從MDI區(qū)域中移除指定的子窗口。
  • setActiveSubWindow(QMdiSubWindow *window):將指定的QMdiSubWindow設置為活動窗口。
  • cascadeSubWindows():級聯(lián)排列所有子窗口。
  • tileSubWindows():平鋪排列所有子窗口。
  • subWindowList():返回包含所有子窗口的列表。
  • activeSubWindow():返回當前活動的子窗口。
信號
  • subWindowActivated(QMdiSubWindow *window):當活動窗口發(fā)生變化時觸發(fā)該信號,參數(shù)為當前活動的子窗口。
  • subWindowActivated(QWidget *window):重載版本的subWindowActivated信號,參數(shù)為當前活動的子窗口的內(nèi)部小部件。
  • subWindowAboutToActivate(QMdiSubWindow *window):在即將激活子窗口之前觸發(fā)該信號,參數(shù)為即將激活的子窗口。
  • subWindowAboutToActivate(QWidget *window):重載版本的subWindowAboutToActivate信號,參數(shù)為即將激活的子窗口的內(nèi)部小部件。
  • cascadeSubWindows():槽函數(shù),用于級聯(lián)排列所有子窗口。
  • tileSubWindows():槽函數(shù),用于平鋪排列所有子窗口。
  • activateNextSubWindow():槽函數(shù),激活下一個子窗口。
  • activatePreviousSubWindow():槽函數(shù),激活上一個子窗口。

除了上述函數(shù)、信號和槽之外,QMdiArea還具有一些其他函數(shù)用于設置和查詢MDI區(qū)域的屬性,例如設置背景顏色、設置視圖模式、獲取焦點子窗口等。可以參考Qt官方文檔中的QMdiArea類文檔以獲取更詳細的信息和完整的函數(shù)、信號和槽列表。

示例

以下示例,實現(xiàn)使用QMdiArea實現(xiàn)添加子窗口、刪除子窗口、設置背景樣式和平鋪子窗口等功能:

#include <QtWidgets>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QMainWindow mainWindow;

    QMdiArea mdiArea;
    mainWindow.setCentralWidget(&mdiArea);

    // 設置背景樣式
    mdiArea.setStyleSheet("background-color: #e9e9e9;");

    // 添加子窗口
    QWidget *subWindow1 = new QWidget;
    subWindow1->setWindowTitle("SubWindow 1");
    QLabel *label1 = new QLabel("This is SubWindow 1");
    label1->setAlignment(Qt::AlignCenter);
    QVBoxLayout *layout1 = new QVBoxLayout(subWindow1);
    layout1->addWidget(label1);
    mdiArea.addSubWindow(subWindow1);

    QWidget *subWindow2 = new QWidget;
    subWindow2->setWindowTitle("SubWindow 2");
    QLabel *label2 = new QLabel("This is SubWindow 2");
    label2->setAlignment(Qt::AlignCenter);
    QVBoxLayout *layout2 = new QVBoxLayout(subWindow2);
    layout2->addWidget(label2);
    mdiArea.addSubWindow(subWindow2);

    // 顯示主窗口和子窗口
    mainWindow.show();

    // 平鋪子窗口
    mdiArea.tileSubWindows();

    // 刪除子窗口
    mdiArea.removeSubWindow(subWindow1);

    return app.exec();
}

【Qt控件之QMdiArea】介紹及使用,Qt編程,Qt記錄,qt,服務器,開發(fā)語言

在示例中,使用QMdiArea來創(chuàng)建一個MDI區(qū)域,并將其設置為主窗口的中心小部件。通過設置QMdiArea的樣式表來定制背景樣式。然后,使用QWidget來創(chuàng)建兩個子窗口,并將它們添加到MDI區(qū)域中使用addSubWindow()函數(shù)。最后,調(diào)用tileSubWindows()函數(shù)來平鋪子窗口,并在需要時使用removeSubWindow()函數(shù)來刪除子窗口。文章來源地址http://www.zghlxwxcb.cn/news/detail-722251.html

到了這里,關于【Qt控件之QMdiArea】介紹及使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Qt編程基礎 | 第三章-控件 | 3.3、對話框

    Qt編程基礎 | 第三章-控件 | 3.3、對話框

    對話框:在主窗口中操作,有可能觸發(fā)某一個行為動作,會彈出一個新的對話窗口,解決一個臨時性的會話,在對話窗口中執(zhí)行某一個功能。QDialog可以作為自定義對話框的基類,同時Qt也提供了一些標準對話框,例如:QFileDialog、QColorDialog等,下面是QDialog類的繼承結(jié)構(gòu),如下

    2024年02月06日
    瀏覽(93)
  • Qt Designer 控件箱中的控件介紹及布局比列分配

    控件箱介紹? ? ? ?? ????????Qt Designer的控件箱(Widget Box)包含了各種常用的控件,用戶可以通過拖放的方式將這些控件添加到窗體設計器中,用于構(gòu)建用戶界面。以下是一些常見控件箱中的控件及其功能的講解: 1. 基本控件 : 標簽(Label) :用于顯示文本或圖像。

    2024年04月13日
    瀏覽(19)
  • 開源Qt Ribbon控件——SARibbon的布局思路及介紹

    開源Qt Ribbon控件——SARibbon的布局思路及介紹

    原文鏈接:https://blog.csdn.net/czyt1988/article/details/113811620 https://devpress.csdn.net/gitcode/6412b1fe986c660f3cf9294a.html?spm=1001.2101.3001.6650.4utm_medium=distribute.pc_relevant.none-task-blog-2 default CTRLIST activity-4-108312948-blog-126431338.235^v31^pc_relevant_default_base3depth_1-utm_source=distribute.pc_relevant.none-task-blog-2 defa

    2024年01月25日
    瀏覽(24)
  • QT Creator上位機學習(三)QString及其相關控件介紹

    QT Creator上位機學習(三)QString及其相關控件介紹

    QSting類,用于處理字符串,進行字符串和數(shù)字之間的轉(zhuǎn)化 轉(zhuǎn)換函數(shù): 1.數(shù)字轉(zhuǎn)字符串 其中setNum() 函數(shù)和number()函數(shù)使用了多個重載定義,可以處理各種類型的整數(shù)和浮點數(shù),處理整數(shù)的時候還可以指定進制。 例如:數(shù)據(jù)轉(zhuǎn)化為指定進制的字符串 2.字符串轉(zhuǎn)數(shù)字 轉(zhuǎn)換為整數(shù):

    2024年02月11日
    瀏覽(18)
  • 【Qt 學習筆記】Qt常用控件 | 輸入類控件 | Text Edit的使用及說明

    【Qt 學習筆記】Qt常用控件 | 輸入類控件 | Text Edit的使用及說明

    博客主頁:Duck Bro 博客主頁 系列專欄:Qt 專欄 關注博主,后期持續(xù)更新系列文章 如果有錯誤感謝請大家批評指出,及時修改 感謝大家點贊??收藏?評論? 文章編號:Qt 學習筆記 / 29 1. 簡介 QTextEdit是Qt中的一個可編輯的文本框控件,可以用于顯示和編輯多行文本。 它是基于

    2024年04月28日
    瀏覽(30)
  • QT:自定義控件(Connect使用,子控件連接)

    QT:自定義控件(Connect使用,子控件連接)

    1.舉例:主頁面為mainwindow,設置的子控件為Form 2.主界面 3.子控件中需要實現(xiàn):QSpinBox移動 QSlider跟著移動,QSlider移動 QSpinBox數(shù)字跟著改變 還需要實現(xiàn),在主界面中讀取和設置子控件的數(shù)值: 子控件添加接口: 主界面通過按鈕調(diào)用接口:

    2024年02月13日
    瀏覽(25)
  • QT QCalendarWidget控件 使用詳解

    QT QCalendarWidget控件 使用詳解

    ????????本文詳細的介紹了QCalendarWidget控件的各種操作,例如:設置日歷的文本格式、設置日歷的大小、日歷移動、日歷隱藏顯示、設置日歷時間最大值、設置日歷時間最小值、單擊信號槽、日歷改變信號槽、雙擊鼠標信號槽等操作。 ??????? 本系列QT全面詳解文章目前

    2024年02月16日
    瀏覽(23)
  • QT QTabWidget 控件 使用詳解

    QT QTabWidget 控件 使用詳解

    ?????? 本文詳細的介紹了QTabWidget控件的各種操作,例如:新建界面、設置頁面名字、設置提示信息、設置頁面激活、設置標題欄位置、設置頁面關閉按鈕、設置頁面關閉按鈕、獲取頁面下標、獲取頁面總數(shù)、清空所有頁面、刪除某個頁面、設置拖拽移動、設置顯示頁面、

    2024年02月03日
    瀏覽(29)
  • QT QLabel控件(使用詳解)

    QT QLabel控件(使用詳解)

    ??????? 本文詳細的介紹了TextLabel控件的各種操作,例如:顯示邊框、設置文字、設置字體、設置信息提示框、狀態(tài)提示、居中對齊、加載圖片、自適應圖片大小、設置位置大小、樣式表等操作。 本文作者原創(chuàng),轉(zhuǎn)載請附上文章出處與本文鏈接。 QLabel控件(使用詳解)目錄

    2024年02月15日
    瀏覽(25)
  • QT QToolBox控件使用詳解

    QT QToolBox控件使用詳解

    ????????本文詳細的介紹了QToolBox控件的各種操作,例如:新建界面、添加頁簽、索引設置當前項、獲取當前項的索引、獲取當前項窗口、獲取索引值是int的窗口、移除索引值項、獲取項的數(shù)量、獲取指定索引值、設置索引項是否激活、獲取索引值項是否激活、設置項的圖

    2024年02月09日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包