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)

相关推荐