标题:基于QGraphicsView的简易画板EasyCanvas -- 第二版
作者:douzhq
日期:2020-09-06 13:00
内容:
EasyCanvas 第二版,第一版的功能可参见:
基于QGraphicsView的简易画板EasyCanvas -- 第一版
第二版 在第一版的基础上增加如下功能:
节点树撤销/重做Python脚本动态修改节点属性方案管理
演示视频及代码讲解:
https://www.bilibili.com/video/BV1Aa4y1j763#reply3487117074
1. 节点树
具有同步选择节点、删除节点、节点重命名和搜索的功能。
节点树使用Qt的Model-View框架实现

2. 撤销/重做(Redo/Undo)
使用Qt的 QUndoCommand 和 QUndoStack 的实现。
快捷键 Ctrl+Z 撤销,Ctrl+Y 重做
撤销重做栈中会记录每一步的操作

3. Python脚本
增加了一些与画布相关的基本命令,如 创建、删除节点,修改和获取节点属性等
具体的命令可以参见:EasyCanvas命令介绍
Python与C++交互部分使用 PythonQt 实现的,关于PythonQt的更多介绍可以参考这篇文章:
使用PythonQt实现C++与Python混合编程

4. 方案管理
增加新建空白方案、打开、保存、删除方案等功能。
这里使用 SQLite 数据库,将方案保存到本地数据库中。

5. 其他
增加使用键盘方向键微调元素位置增加快捷键 Ctrl+C 复制,Ctrl+V 粘贴 元素的功能
作者:douzhq
CSDN博客主页:https://blog.csdn.net/douzhq/article/details/104238018
完整代码下载:https://github.com/douzhongqiang/EasyCanvas
软件下载:
链接:https://pan.baidu.com/s/1vEJ1T2txrGtSjlBNHip-tg提取码:94ds
#1 [libaineu2004 09-06 19:23]
又遇到你了。顶一个。
#2 [liudianwu 09-07 11:05]
很好很棒
#3 [九重水 09-07 13:40]
GOOD JOB
#4 [lzh280 09-07 19:20]
#5 [programmerhz 09-18 14:58]
强,学习了,谢谢分享!