tkinter 写得记事本小案例, 继续吐槽几句.
写这玩意, 可比在 qt 下费时费力多了
Text 这个控件是巨坑, 有一堆默认的快捷键, 连tk的官档介绍的都不全面,只能一个个试. 一个个绑定空函数. 比如:<<Paste>事件, 看上去不错, 但是和菜单项和快捷键联合起来用就是坑了, 会粘贴两遍,一次是自己的绑定,一次是默认的虚拟事件, 解决方式如前所述, 绑定用类绑定,
类解绑都不好用.
更坑的是菜单项的 checkbtn 和 radiobtn 处理起来也是坑 : 鼠标点击是函数调用并直接修改btn的值, 快捷键绑定是事件调用, 怎么区分两者, 想了半天,最终是传个事件调用的标记, 形参用 *args 的形式, 不得不说 lambda 有时候真的巨方便.
上下文菜单到是挺方便的, 可以直接引用菜单栏的菜单,然后post一下
字体 和 photo 都是一种资源, 可以通过 名称获取,但是要在全局引用一下, 延长生命周期

不喜欢tkinter的tab式的Notebook, 自己写了一个,和notebook 组合成一个自定义的tabwidget,带关闭按钮, 但还没集成到这个app里, toolbar 太占地方了,加了分页的标签栏, 太肥.懒得再弄了.
本来想写个 python 文件格式化功能的, 觉得太难,又没头绪, 遂放弃