python3.1+pyqt4.8.1+eric5开发一个简单记事本程序

我不得不承认,或许这也是很多人不得不承认的事实,Python资料很少,而且查询起来不方便,就算是官方帮助文档亦是如此。这里面牵扯的东西太多了,譬如版本不兼容,开发项目需要组合第三方的工具,官方帮助文档制作的并不是很理想等等因数。

Python使用的人相对于其他的主流语言来说是很少的,而使用pyqt开发桌面程序就更加少了,大多数是在WEB这一块。

 

下面是我做的一个记事本程序,主要就是分享一下初级桌面程序开发的经验,同时也记录一下过程与代码。

1.打开eric5,建立一个项目NewWorkTest(存取的文件后缀.e4p)。

 

2.建立一个ui界面文件(Widget类型),命名:NewWorkTestOne(存取的文件后缀.ui)。此时会自动打开pyqt的图形编辑界面,放入3个QPushButton按钮控件:Open Save Close,一个QTextEdit文本控件。Close按钮的ButtonClose点击事件链接Form的close()槽。然后保存,返回eric5编辑器中,点击Compile form编译窗体。此时可以在Ui_NetWorkTestOne.py中看到源码。

Ui_NetWorkTestOne.py源代码:

按F2或者F5可以运行看到界面效果。

注意:如果在pyqt里面的按钮设置的是中文字体的话,编译窗体之后会出现中文乱码的情况,此时,我们只需要将Settings->Prefrence->Qt中的Encoding都设置为gb2312即可。当然也可以不改变,那就需要到代码中手动将乱码改成中文。

 

3.点击NetWorkTestOne.ui,选择Generate Dialog Code,生成一个类(这个类继承窗体Ui_NetWorkTestOne类,保证每次设计界面保存并编译之后不会影响已经写的事件、函数等等代码),命名:SubFormNodepad(文件后缀:py),双击此文件进入代码界面。这个时候会发现系统已经生成了一些简单的代码如继承窗体、启动函数__init__等等,我们添加一些启动代码:

if __name__ =="__main__":
    app = QtGui.QApplication(sys.argv)
    subFormNotepad = SubFormNotepad()
    subFormNotepad.show()
    sys.exit(app.exec_())

如下源代码:

此时我们按F5会发现,编辑器报一个错误,定位到:from .Ui_NetWorkTestOne import Ui_FormNotepad(红色背景)。这可能是eirc5的一个BUG还是怎么的(或许是我工具装的不好?或许是系统有问题?至少我研究了很久也没有找到原因),我们去掉这个.就可以正常运行了。

 

4.编写记事本程序

源代码:

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值