这周开始着手界面开发,python自带的有pytinker,但是界面不是很美观,虽然会用wxpython,这个开发的界面也是和windows的xp下的风格一样;
最终选择Qt进行开发,python对应的PyQt4,现在已经是Python3.x + PyQt5.3的组合了,但是为了平台兼容性,暂时采用python2.7.8+PyQt4开发,
配置好环境,使用eric开发集成环境,分别在win7和ubuntu上都搭建了环境,都可以进行开发。
对于PyQt4的文档比较少,只知道有一个博客的内容,暂时就学习了一些例子。
界面难在如何设计,自己想到了一个构思,希望在本周内完成局部功能的转接,现阶段本项目的PyQt4开发总结如下:
1.PyQt采用signal和slot的机制,就是控件和动作的映射;
2.界面需要建立一个主循环windows:流程如下:
mainapp = GtGui.QApplication([])
或者:mainapp = GtGui.QApplication(sys.argv)
myapp = SelfDefinedClass() #自己定义的类,声明一个对象
myapp.show()
在程序退出时确保安全退出:
sys.exit(mainapp.exec_())
3.对于按钮的机制:clicked() -->slot()函数
对于菜单检测:triggered() -->slot()函数
对于TextEdit:检测文本有变化: TextChanged() -->slot()函数
还有很多需要解决的问题:
如何将sys.stdout 定向到TExtEdit上;
如何解决界面上中文乱码问题,以及程序执行之后中文乱码问题(这个是python2.x留下的问题)
完善界面的功能
暂时的界面设计如下: