Python基础:第十九章 常用的GUI框架
笔者按:
如果其他库是内核,那么将其美化的,包装的,最终呈现在各位读者面前的就是GUI。
19.1初始GUI
19.1.1什么是GUI?
- 定义:是Graphical User Interface(图形用户界面),不仅是输入文本,返回文本,用户可以看到窗口,按钮,文本框等图形,并且借助鼠标、键盘进行输入。
- 三个基本要素:输入,处理,输出。
19.1.2常用GUI框架
- 笔者的题外话,本书采用的是wxpython。
- CSDN中的元宵大师开发的量化系统是wxPython,还有别的作者就是通过TK库进行系统开发。
- 但是就笔者个人看法而言,我们的GUI化最重要还是补充炒股软件中的不足,而不是大力去还原一套软件。那样子得不偿失,而且效率更慢,代价更大。
- 就笔者的思考而言,要满足的有:
- 1.市场监控和异常
- 2.策略有效性监控
- 3.近期强势股走势变化【比如,在几板开板以及未来一周走势,便于我们抄写作业和风控】
- 4.模拟和推演等
- 5.盘中推送和股票池维护
- 6.进行归一化处理,更好的识别强弱关系等
- 减少数据传输压力,减少数据购买或者下载,调用的成本等。
19.2wxPython框架的使用
19.2.1安装
pip install -U wxPython
19.2.2创建一个wx.app()的子类
import pandas as pdimport wxclass APP(wx.App): #初始化方法 def ONInit(self): frame=wx.Frame(parent=None,title='hello wypython') frame.Show() return Trueif __name__ == '__main__': app=APP() app.MainLoop()
- 画不出来
19.2.3wx.App
import wxapp=wx.App()frame=wx.Frame(None,title='Hello wxpython')frame.Show()app.MainLoop()
19.2.4wx.Frame框架
import wxclass myframe(wx.Frame): def __init__(self,parent,id): wx.Frame.__init__(self,parent,id,title='创建Frame',pos=(100,100),size=(300,300))if __name__=='__main__': app=wx.App() frame=myframe(parent=None,id=-1) frame.Show() app.MainLoop()
19.2.5使用wx.Frame框架
1.StaticText
2.TextCtrl输入文本类
3.Button按钮类
19.2.6BoxSizer布局
说句实话,wxpython过于绕口,调用的函数大多数都有大小写,输入需要切换很多次,不利于调用,TK这一点要好一些,另外,相关的部署上要比TK更加复杂。
19.2.7事件处理
19.3PyQt框架的使用
19.3.1安装PyQt
pip install pyqt5
19.3.2使用第三方开发工具
安装比较复杂
19.3.3创建主窗体
19.3.4常用控件
19.3.5布局管理
19.3.6信号与槽的关联
19.3.7资源文件的使用
代码+手动?哈哈,这真的是具有喜感的操作。
赞 (0)