【记录】python3 使用tkinter制作tkinterUI编辑器 《零》

使用tkinter制作tkinterUI编辑器


前言

我经常使用python写一些带UI的小工具,手写UI感觉有点麻烦,不习惯用pack和grid,想要vs里C#那样拖拽式的UI编辑器,不想使用第三方的库,所以决定自己写一个,这里是汇总篇,以后会随着更新进行修改,目前使用python3.4进行开发,3.6测试过没什么问题。

完整代码上传到了github,可以从这里下载
csdn这里也可以下载,不过这里没有更新记录里面的内容


超链接

1. 关于UI的读取与存储
2. 关于UI读取之后的创建
3. 控件创建续以及第一版编辑器
4. 滚动滑动条的制作
5. 最新的componentProperty.py
6. tabControl控件的制作
7. 属性编辑控件的制作(上)
8. 属性编辑控件的制作(中)
9. 属性编辑控件的制作(下)
10. EditorTree制作
11. 最新的tkinterEditor.xml,tkinterEditor.py,components.py
12. 菜单以及主题
13. 新建ui以及打开ui
14. 选中逻辑以及文件的关闭逻辑
15. 属性的编辑逻辑
16. 控件的创建与删除
17. 工程的创建
18. 一些新功能
19. 嵌入python解释器
20. 重构选中框
21. 事件管理与多重选择管理

一、最终界面预览

在这里插入图片描述

二、使用说明

  1. file菜单new_project(ctrl+p)创建新工程,输入名字和路径进行创建,创建之后会自动打开创建的ui
  2. 通过快捷按钮创建控件,控件会被创建到选中的父控件中
  3. file菜单save_gui(ctrl+s)保存ui,下次直接用file菜单open_gui(ctrl+o)打开ui
  4. 选中控件后可以通过左边的属性编辑框进行编辑,鼠标左键支持直接移动控件,部分控件支持鼠标左键点击右下角然后拖拽改变尺寸
  5. 鼠标右键控件可以弹出编辑菜单,可以进行删除子控件操作
  6. 通过左下角的树也可以选中控件
  7. 编辑完ui后去工程目录执行 工程名.py即可打开之前编辑的ui
  8. view菜单change_theme可以更改背景颜色
  9. component_name是控件的名字,这个名字不能重复,首字母不能大写,大写的话下次读取会报错,我懒得处理了
  10. 创建的子控件的初始背景颜色会根据父控件的背景进行变化,如果父控件是white,子控件是grey,父控件是其他颜色,子控件就是white
  11. 可以在工程名.py处理自己的逻辑,可以像self.master.children.get(“sonySongListEditor”, None)这样获取子控件来处理自己的逻辑,可以参考这篇记录,这篇记录了编辑器的简单应用

三、更新记录

11月20日上午:添加了复制粘贴功能,选中控件后ctrl+c复制,选中要被复制到的父控件ctrl+v粘贴
11月20日下午:修复了复制控件后删除控件会报错的问题,添加将xml读取到当前编辑的控件中的功能(快捷按钮的第一个按钮)
11月20日傍晚:由于在编辑属性的时候也会用到ctrl+c,v进行复制粘贴,会和复制粘贴控件的快捷键冲突,所以修改复制控件的快捷键为ctrl+,粘贴控件的快捷键为ctrl+.
11月28日下午:1.修复点击树根节点报错的问题 2.添加鼠标右键点击树结点弹出右键菜单的功能
12月2日晚上:添加了一个python解释器用于调试,alt+p打开,esc关闭,用于调试一些功能,具体请看第19篇记录

提示:从这往后的更新会提交到github上的1.0分支里,以后稳定了之后再合入主干。
12月8日晚上:重构了选中框,现在可以拖拽任何控件修改控件尺寸了,改动较大,具体请看第20篇记录
12月18日傍晚:增加多重选择第一版,ctrl+鼠标左键进行多选与取消多选,目前只支持多选之后一起移动与一起拖拽修改尺寸


下一篇记录

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

archmage199

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值