PyQt5项目实训:简易电子词典

本文介绍了一次使用PyQt5创建电子词典的实践过程。通过qt Designer设计GUI界面,并编写槽函数,实现了单词查询、历史记录、收藏及查看单词本功能。此外,还特别设计了一个启动界面提升用户体验。程序代码分为两部分,一部分专注于槽函数的实现,另一部分关注GUI界面的搭建。textBrowser组件允许以HTML格式展示内容,提供自定义布局的灵活性。
摘要由CSDN通过智能技术生成

     PyQt5是python中一个非常实用的GUI编程模块,功能十分强大。刚刚学完了Pyqt的编程,就迫不及待的写出了一个电子词典GUI程序。整个程序使用qt Desiner把整个gui界面做好,槽函数则自己写好的。电子词典实现了查询单词,查询历史记录,收藏和查看单词本的功能,另外为了是程序更加炫酷,还添加了一个启动界面。具体代码如下:

     第一个为主程序代码,主要实现槽函数功能。

from PyQt5.QtCore import pyqtSlot
from PyQt5.QtWidgets import QMainWindow
from PyQt5 import  QtWidgets
from Ui_E_Dict_Main import Ui_E_Dictory
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import time, re

# 槽函数代码,运行程序需要运行本文件
class MainWindow(QMainWindow, Ui_E_Dictory):
    """
    Class documentation goes here.
    """
    def __init__(self, parent=None):
        """
        Constructor
        
        @param parent reference to the parent widget
        @type QWidget
        """
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)
        # 启动时休眠1秒
        time.sleep(1)
    
    # 按钮1 查找单词,把单词显示在textBrowser的同时,插入历史记录
    @pyqtSlot()
    def on_pushButton_clicked(self):
        """
        Slot documentation goes here.
        """
        # 单词查询,需要先有一个'dict.txt'文件,其中有大量的英文单词和注释
        # 此处也可以先把'dict.txt'插入数据库,历史记录和单词本的插入和查询都可以直接操作数据库
        # 不过数据库需要事先安装数据库,并建立相应的表,不好打包,不太方便
        word=self.lineEdit.text()
        f=open('dict.txt', 'r')
        for line in f:
            # 对字典文件的数据进行分析,拆解为适合显示的格式
            l = re.split('[ ]+',line)
            if l[0]==word:
                interpret=' '.join(l[1:])
                data='%s\n  %s'%(l[0], interpret)
               # interpret='%s: %s'%(l[0],' '.join(l[1:]))
                self.textBrowser.setText(data)
                # 当地时间
                t1=time.localtime()
                t2=time.asctime(t1)
                #self.lineEdit.setText("")#lineEdit输入后
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值