python&gui
TRANSCRIPT
![Page 1: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/1.jpg)
Python & GUI
Hepo @2015
![Page 2: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/2.jpg)
![Page 3: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/3.jpg)
evolution of the desk
![Page 4: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/4.jpg)
GUIuser
interface
通过设计的手段,提高信息控制过程的操作密度(高效、用户体验)
![Page 5: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/5.jpg)
![Page 6: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/6.jpg)
Cross Platform ?
![Page 7: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/7.jpg)
No Silver Bullet
cross platform ≈ print(‘hello world’) in GUI way
![Page 8: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/8.jpg)
Platforms
different icons, different events, different systems, different ways to package app.
![Page 9: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/9.jpg)
Platforms
![Page 10: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/10.jpg)
Cross Platform is Not Important
set webkit as an example: MacGap & nw.js
![Page 11: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/11.jpg)
have a frame first, but you need more packages.
Why Python ?
![Page 12: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/12.jpg)
![Page 13: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/13.jpg)
![Page 14: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/14.jpg)
My Solutions and Reasons
长 . 话 . 短 . 说
![Page 15: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/15.jpg)
Frame
Qt & PyQt. and why?
![Page 16: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/16.jpg)
UI
Qt Creator, pyuic5. why not Qt Quick?
![Page 17: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/17.jpg)
![Page 18: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/18.jpg)
Package App
py2app py2exe + Inno Setup pyinstaller
![Page 19: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/19.jpg)
Patches & Utils
auto compiler, single instance limit, cross-platforms utils .etc
![Page 20: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/20.jpg)
放 弃
![Page 21: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/21.jpg)
。。。
![Page 22: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/22.jpg)
Thinking in GUI way
![Page 23: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/23.jpg)
Events / Signals / Async
connected
![Page 24: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/24.jpg)
1,downloading 2, tell process bar 3, when finished
![Page 25: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/25.jpg)
Layout & Style
![Page 26: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/26.jpg)
![Page 27: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/27.jpg)
scrollbar
context
resizescroll
![Page 28: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/28.jpg)
Some Tech Details
![Page 29: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/29.jpg)
packages to package
源码保护
![Page 30: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/30.jpg)
• packages to zip
• merge zip into a .py file & auto imported
• convert the .py file into .c file by Cython
• .c file > python package by Cython.Distutils
• remove related pyc/pyo files in site-package.zip
• run in your GUI app: import `package`
![Page 31: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/31.jpg)
![Page 32: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/32.jpg)
it works
on others’ Macs
![Page 33: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/33.jpg)
![Page 34: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/34.jpg)
![Page 35: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/35.jpg)
。。。
![Page 36: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/36.jpg)
请保持想象
think more . . .
![Page 37: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/37.jpg)
Run Flask in GUI App
![Page 38: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/38.jpg)
Why not MongoDB?
![Page 39: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/39.jpg)
Why not filesystem?
![Page 40: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/40.jpg)
webp
![Page 41: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/41.jpg)
。。。
![Page 42: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/42.jpg)
Marketing
![Page 43: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/43.jpg)
。。。
![Page 44: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/44.jpg)
制作产品视频
![Page 45: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/45.jpg)
ScreenFlow + 单反 + 三脚架
![Page 46: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/46.jpg)
关 于 版 权
买授权、买素材、尊重但别用GPL的 . . .
![Page 47: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/47.jpg)
App主页 & 销售平台
靠山吃山 FarBox . . .
![Page 48: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/48.jpg)
![Page 49: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/49.jpg)
![Page 50: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/50.jpg)
关 于 客 服
与你的用户保持一定的距离
![Page 51: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/51.jpg)
。。。
![Page 52: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/52.jpg)
Review
![Page 53: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/53.jpg)
GUI, 更高效、体验更好
![Page 54: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/54.jpg)
大家都能跨,那么跨平台就已经不重要了
![Page 55: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/55.jpg)
一个成熟、持续维护的框架,以及自己积累的utils
![Page 56: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/56.jpg)
GUI的思考方式:异步、关联、Layout .etc
![Page 57: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/57.jpg)
GUI是一种设计边界的解放,要放肆想象
![Page 58: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/58.jpg)
保护源码
![Page 59: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/59.jpg)
Market: 需求产生利润,设计产生品牌
![Page 60: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/60.jpg)
时间最宝贵
![Page 61: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/61.jpg)
相信自己
![Page 62: Python&GUI](https://reader034.vdocument.in/reader034/viewer/2022042907/588523cd1a28abf7538b5c23/html5/thumbnails/62.jpg)
相信Python