Qt::工程框架-工具栏停靠|悬浮-QDockWidget

二维矢量动画智能制作软件开发合集

链接:软件开发技术分享及记录合集

个人开发二维矢量动画智能制作软件界面如下:

目录

一、界面停靠原理

二、界面停靠代码实现

三、界面停靠软件测试视频

结束语


一、工具栏停靠|悬浮原理

本软件的窗口设置如下:

Qt::工程框架-工具栏停靠|悬浮-QDockWidget_第1张图片

窗口工具栏的设置分为2类,第一类是是否在主界面配置该工具栏,第二类是该工具栏是否悬浮。本软件采用QDockWidget类实现(设置及使用方法详见Qt官方文件),当主界面不配置某工具栏时,将该widget删除,启用该工具栏的时候,则生成新的QDockWidget,当设置工具栏为悬浮状态时,采用QDockWigdet的setFloating()方法实现。

二、工具栏停靠|悬浮代码实现

.h文件变量申明:

void deleteDockTitle(QDockWidget *widget);

void MainWindow::connectDock(QAction *win,QAction *dock,QDockWidget *widget)
{
    connect(win,&QAction::toggled,this,[=](){if(!dock->isChecked()){
            QDockWidget *a = new QDockWidget;
            widget->setTitleBarWidget(a->titleBarWidget());}
        else
            deleteDockTitle(widget);
        widget->setFloating(!dock->isChecked());
        widget->setVisible(win->isChecked());});
    connect(dock,&QAction::toggled,win,&QAction::toggled);
}

三、工具栏停靠|悬浮软件测试视频

界面停靠


结束语

本文简要梳理了软件【工具栏停靠|悬浮】的实现框架,内容均为原创。

作者文笔水平一般,请大家多多包涵和指正,十分欢迎进一步交流学习。

若需,请联系本人小红书(小红书号:YzLab96),谢谢。

链接:  软件开发及测试所有视频合集见小红书​​​​​​​

你可能感兴趣的:(二维矢量动画软件,qt,开发语言,c++,个人开发,动画)