Go to file
cxykevin c450344fc2
All checks were successful
Build and Publish / Run (push) Successful in 47s
更改select
2024-05-01 13:45:21 +08:00
.gitea/workflows 更新 .gitea/workflows/build.yaml 2024-04-21 11:11:19 +08:00
.vscode 添加packer 2024-04-26 09:06:43 +08:00
magictk 更改select 2024-05-01 13:45:21 +08:00
packer 添加packer 2024-04-26 09:06:43 +08:00
photo2 补充图标资源 2024-04-25 22:53:46 +08:00
.gitattributes 完成icon 2024-04-26 09:00:26 +08:00
.gitignore 添加packer 2024-04-26 09:06:43 +08:00
debug.py 修复plain的图标bug 2024-04-29 21:10:39 +08:00
LICENSE Initial commit 2024-03-24 18:20:44 +08:00
MANIFEST.in 完成setup,解决资源包问题 2024-04-19 21:36:24 +08:00
README.md 更新readme 2024-04-26 09:35:18 +08:00
setup.py 更新buttonlight对应文字按钮 2024-04-27 13:39:33 +08:00

magictk

icon

一个模仿 element plus 的 tkinter 组件库

演示

依赖/需求

  • python >= 3.8
  • pywin32 (Only in Windows)

安装

pip

任选其一

pip install magictk -i https://pypi.org/simple

pip install --index-url http://git.hmtsai.cn/api/packages/cxykevin/pypi/simple magictk

源码安装

  1. clone 本仓库

  2. 运行setup.py

    python setup.py install
    

性能

测试机器:

  • Arch Linux x86_64
  • Wayland + KDE Plasma
  • Intel Celeron G1840 (2) @ 2.800GHz
  • Intel HD Graphics
  • Memory: 11665MiB
  • htop

CPU 占用:

  • 单窗口约 20%

非最新数据

Memory 占用:

  • 50 MiB

性能测试会消耗 200 MiB 内存, Tim Sort sort() 1e7 随机数据 测试

组件

以下组件按完成时间从上(早)到下(晚)排序

  1. Window (在 Linux 下存在强制置顶问题,且最大化存在问题 OSX 未经过测试)
  2. Button
  3. ProgressBar
  4. CheckBox (可以使用 Checkbox 指定 RadioGroup 实现 Radio)
  5. Menu
  6. Select
  7. Frame (所有组件必须配合自定义的 Frame 使用,因为 Frame 携带 root 信息,可手动指定)
  8. Input (在 Linux 下会弹出一个空窗口(如果没有这个窗口无法输入,原理尚不清楚))
  9. ScrollBar (在多重嵌套时滚轮事件绑定稍有问题,在控件上绑定失效)