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

Visual Studio Qt Qt-Advanced-Docking-System 新建停靠窗口+布局記錄+布局載入

這篇具有很好參考價值的文章主要介紹了Visual Studio Qt Qt-Advanced-Docking-System 新建??看翱?布局記錄+布局載入。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


前言

最近在使用visual studio 2022和qt開發(fā)項目時,涉及到制作大數據可視化界面的工作。
為了完成這一功能,查詢了現有的實現方案,最終選擇使用:Qt-Advanced-Docking-System
作為布局方案的實現方式。
此時,就遇到幾個問題:

  1. 如何下載Qt-Advanced-Docking-System
  2. 如何在visual studio中載入Qt-Advanced-Docking-System插件
  3. 如何使用Qt-Advanced-Docking-System
    接下來將根據這幾個問題,完成本文敘述。

一、如何下載Qt-Advanced-Docking-System

下載鏈接:github地址 https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System

二、如何在visual studio中載入Qt-Advanced-Docking-System插件

1.生成dll和lib

  1. 打開壓縮包Qt-Advanced-Docking-System-master.zip(不管你是git下來還是從哪下載下來的)
  2. 找到Qt-Advanced-Docking-System-master\src目錄,用qt-creator打開src.pro
  3. 通過Debug模式,和Release模式各自buid一遍
  4. 在Qt-Advanced-Docking-System-master\lib目錄下,能夠得到我們想要的:
    qtadvanceddockingd.dll qtadvanceddockingd.lib
    qtadvanceddocking.dll qtadvanceddocking.lib
    收好。

2.導入dll和lib

  1. 接下來在你喜歡的目錄(我的話就在項目里新建一個bin\dock目錄用來放置庫和頭文件)里,新建一個include目錄和一個lib目錄
  2. 將Qt-Advanced-Docking-System-master\src目錄下的所有.h和.cpp文件放到剛剛建好的哪個include目錄下
  3. 將Qt-Advanced-Docking-System-master\lib下剛剛生成的dll和lib文件放到剛剛建好的lib目錄下
  4. 在你的項目里,分別在debug和release的屬性管理器中,各新建一個新的屬性頁,我起名叫adsdockd.props和adsdock.props。
  5. 在adsdockd.props,adsdock.props中 包含目錄給include,庫目錄給lib
  6. adsdockd.props中 鏈接器-輸入-附加依賴項 加上qtadvanceddockingd.lib
  7. adsdock.props中 鏈接器-輸入-附加依賴項 加上qtadvanceddocking.lib
  8. 在跑起來生成的debug目錄下放qtadvanceddockingd.dll
  9. 在跑起來生成的release目錄下放qtadvanceddocking.dll
  10. 在享用的地方,加上#include “DockManager.h”

三、如何使用Qt-Advanced-Docking-System

1.新建??看翱诤痛翱诠芾?/h3>

.h文件中:

#include "DockManager.h"

類中:

private:
	ads::CDockManager* m_pDockManager = nullptr;
	QMainWindow* visualwidget = nullptr;//用于放置大數據可視化的窗口
	void initVisualWidget();//初始化dock窗口

.cpp文件中:

	visualwidget = new QMainWindow(<放的新建的窗口指針>);
	visualwidget->setWindowFlags(Qt::Widget);//修改窗口為Widget屬性
	m_pDockManager = new ads::CDockManager(visualwidget);

	ads::CDockWidget* dock_1 = new ads::CDockWidget(tr("dock_1"), visualwidget);//窗口1
	dock_1->setWidget(<你要放在懸浮窗口中的窗口>);
	dock_1->setFeatures(ads::CDockWidget::AllDockWidgetFeatures);//可以停靠的位置
	m_pDockManager->addDockWidget(ads::CenterDockWidgetArea, dock_1);

	//以上可以多放幾個
	//...

	QMenu * viewMenu = visualwidget->menuBar()->addMenu(tr("Display Window")); //展示窗口
	viewMenu->addAction(dock_1->toggleViewAction()); //把之前新建的窗口都放進去,在下拉菜單里可以控制是否展示

2.實現布局存儲和載入

.h文件中:
#include “DockManager.h”
類中:
private slots:
//保存大數據展示布局
void saveVisualState();
//載入大數據展示布局
void restoreVisualState();
.cpp文件中:

	QMenu* setViewMenu = visualwidget->menuBar()->addMenu(tr("Display Settings")); //展示設定
	setViewMenu->addAction(tr("Save layout"), this, SLOT(saveVisualState()));//保存布局
	setViewMenu->addAction(tr("Restore layout"), this, SLOT(restoreVisualState()));//載入布局

void saveVisualState()
{
	QFile file(App_Path + "/cfg/VisualLayout.ini");
	if (file.open(QIODevice::WriteOnly))//不存在則創(chuàng)建,默認覆蓋  | QIODevice::Append
	//if (file.open(QIODevice::WriteOnly | QIODevice::Append));//文末追加,不存在則創(chuàng)建
	{
		QDataStream out(&file);
		out << m_pDockManager->saveState();
		file.close();
	}
}

void restoreVisualState()
{
	QFile file(App_Path + "/cfg/VisualLayout.ini");
	if (file.open(QIODevice::ReadOnly))
	{
		QByteArray ba;
		QDataStream in(&file);
		in >> ba;
		file.close();
		if (m_pDockManager->restoreState(ba))
		{
			qDebug() << QString("載入布局界面成功");
		}
		else
		{
			qDebug() << QString("載入布局界面失敗") << App_Path + "/cfg/VisualLayout.ini";
		}
	}
}

3.額外注意點

在mainwindow中或者dock中增加layout很可能不生效,需要加一個widget嵌套一下才行。

總結

差不多就這樣了,基于上述描述,就可以正常使用了。文章來源地址http://www.zghlxwxcb.cn/news/detail-491278.html

到了這里,關于Visual Studio Qt Qt-Advanced-Docking-System 新建??看翱?布局記錄+布局載入的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

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

相關文章

  • 在visual studio里配置Qt插件并運行Qt工程

    在visual studio里配置Qt插件并運行Qt工程

    ? ? Qt插件,也叫qt-vsaddin,它以*.vsix后綴名結尾。visual studio簡稱為VS,從visual studio 2010版本開始,VS支持Qt框架的開發(fā),Qt以插件方式集成到VS里。這里簡述在visual studio 2019里配置Qt 5.14.2插件,并配置Qt環(huán)境、編譯和運行Qt工程。 ? ? 下載VS2019,官網地址: https://visualstudio.mi

    2024年02月07日
    瀏覽(22)
  • Visual Studio如何使用Qt開發(fā)桌面軟件?

    Visual Studio如何使用Qt開發(fā)桌面軟件?

    ??筆者熟悉的第一門編程語言是C#,當初本科畢業(yè)設計需要進行Qgis的二次開發(fā),本想利用C#編程,但網上資料較少,多是利用Qt進行Qgis的二次開發(fā),Qt是利用C++編程,當時利用Qt編譯器進行編程,相比Visual Studio還是多有不習慣,雖然知道VS有Qt插件可以使用,但當初嫌麻煩,

    2024年02月13日
    瀏覽(21)
  • Qt Visual Studio添加Qt ui和編譯注意事項

    Qt Visual Studio添加Qt ui和編譯注意事項

    工程中需要新的界面 VS中新建Qt的ui文件,然后需要生成對應的.cpp 和 .h 文件 生成對應的三個文件.ui, xxx. cpp, xxx.h 但是此時在QtWidgetsTestClass.h 里面,包含了#include “ui_QtWidgetsTestClass.h”。 會提示找不到該文件。該文件的生成,需要使用到Qt的uic.exe程序 1.通過配置ui_QtWidgetsTest

    2024年02月02日
    瀏覽(32)
  • Qt6 for Windows 環(huán)境搭建(Visual Studio)

    作者: 一去、二三里 個人微信號: iwaleon 微信公眾號: 高效程序員 在 Windows 中,如果想要開發(fā) Qt 應用程序,可以選擇多種方式: Qt Creator + MinGW 編譯器 Qt Creator + MSVC 編譯器 Visual Studio(自帶 MSVC 編譯器) 前兩種方式之前我們已經介紹過了,主要利用 Qt Creator 作為 IDE,并配

    2024年02月10日
    瀏覽(24)
  • QT 6.3和Visual Studio 2022詳細安裝及配置教程

    一、安裝QT 作者使用的操作系統(tǒng)為Win10 64位操作系統(tǒng),操作系統(tǒng)版本號21H2,必須選擇新于該操作系統(tǒng)才能安裝成功。安裝過程中確保持續(xù)聯(lián)網,關閉不必要的其他軟件。QT的安裝過程可以參考文獻1和2(文獻鏈接附后)。 需要注意的是: (1)推薦使用清華源下載最新的在線安

    2024年02月04日
    瀏覽(28)
  • QT轉型Visual Studio(qmake項目到cmake項目的移植)

    QT轉型Visual Studio(qmake項目到cmake項目的移植)

    由于工作需要,同時也為了方便以后的集成升級,希望將之前用Qt creator qmake開發(fā)的項目移植到cmake項目中,并使用Visual Studio 進行后續(xù)開發(fā),本文主要用以記錄該過程中的常規(guī)步驟和遇到的特殊情況。 在一開始,為了降低開發(fā)難度以及快速完成業(yè)務開發(fā),我們使用Qt Creator原生

    2024年02月09日
    瀏覽(20)
  • 在 Visual Studio 中編譯 Qt 資源文件和 UI 文件教程

    Qt 是一個跨平臺的 C++ 庫,用于開發(fā)圖形界面和應用程序。在 Qt 開發(fā)中,資源文件和 UI 文件是常見的兩種資源,需要將它們編譯成可用的形式,以便在應用程序中使用。本教程將指導您如何在 Visual Studio 中配置并編譯 Qt 資源文件和 UI 文件。 安裝 Qt 開發(fā)工具包:確保您已經

    2024年02月12日
    瀏覽(51)
  • 【Visual Studio】Qt 的實時繪圖曲線功能,使用 C++ 語言,配合 Qt 開發(fā)串口通信界面

    【Visual Studio】Qt 的實時繪圖曲線功能,使用 C++ 語言,配合 Qt 開發(fā)串口通信界面

    知識不是單獨的,一定是成體系的。更多我的個人總結和相關經驗可查閱這個專欄:Visual Studio。 戰(zhàn)斗背景:做了個串口接收界面,用來接收傳輸過來的信號。但是光用數字顯示太單調,需要用圖線顯示出來。 戰(zhàn)略目標:干掉它。 戰(zhàn)術路線:Qt 繪圖可以使用 Qt Charts,先了解

    2024年02月11日
    瀏覽(27)
  • 【Visual Studio】使用 C++ 語言,配合 Qt,開發(fā)了一個串口通信界面

    【Visual Studio】使用 C++ 語言,配合 Qt,開發(fā)了一個串口通信界面

    知識不是單獨的,一定是成體系的。更多我的個人總結和相關經驗可查閱這個專欄:Visual Studio。 我要使用的功能比較簡單,主要包含掃描串口、打開串口、發(fā)送數據、接收數據、暫停按鈕、停止按鈕,因此接下里將圍繞這幾個功能依次更新。 我的工程項目名字叫 “GUI”。

    2024年02月11日
    瀏覽(20)
  • 【VisualStudio】基于 Visual Studio 使用 C++ 語言開發(fā) Qt 環(huán)境配置教程

    【VisualStudio】基于 Visual Studio 使用 C++ 語言開發(fā) Qt 環(huán)境配置教程

    知識不是單獨的,一定是成體系的。更多我的個人總結和相關經驗可查閱這個專欄:Visual Studio。 先上一張效果圖,具體步驟主要分為以下三步。 這一步不再贅述,注意一定要安裝 C++ 語言。 可以參考這個教程 Visual Studio 2022安裝與使用教程。 這一步也不再贅述,網上搜索教

    2024年02月15日
    瀏覽(26)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包