python交互界面代码_用python+pyqt5手工编写一个含交互界面的简易的词法分析器

python+pyqt5手工编写一个含交互界面的简易词法分析器

@author:x1nge.

编译原理基础实验

基础

在之前的一篇博文中我记录了一个不含交互界面的简易词法分析器程序编写内容 点击此处查看

在本文我将用pyqt5写一个简单的交互界面,也修改了部分代码使得程序更加完整。

具体实验分析

本文全部源码见本文末尾,上次编写的不含交互界面的源码也可点此处下载

交互界面可以用QtDesigner快速编写,或者自己写,我采用的是用可视化界面创建了一个大致的框架,然后再手动添加其他需要的控件,或者微调一些属性。

我简单设计的交互界面如图所示:

20200710082946569.jpg

有话说: 这边以C和C++为输入语言,其他语言有一些差别,可以自行修改代码。

UI设计部分,主题代码由pyuic转换后自动获得,分析一下代码,会发现其实很简单,也便于我们之后修改代码或属性。

class Ui_MainWindow(object):

def setupUi(self, MainWindow):

MainWindow.setObjectName("MainWindow")

MainWindow.resize(694, 470)

MainWindow.setFixedSize(694,470)

self.centralwidget = QtWidgets.QWidget(MainWindow)

self.centralwidget.setObjectName("centralwidget")

self.text_input = QtWidgets.QTextEdit(self.centralwidget)

self.text_input.setGeometry(QtCore.QRect(20, 40, 241, 351))

self.text_input.setObjectName("text_input")

self.btn_local = QtWidgets.QPushButton(self.centralwidget)

self.btn_local.setGeometry(QtCore.QRect(20, 400, 101, 30))

self.btn_local.setObjectName("btn_local")

self.text_address = QtWidgets.QTextEdit(self.centralwidget)

self.text_address.setGeometry(QtCore.QRect(136, 400, 396, 30))

self.text_address.setObjectName("text_address")

self.btn_get = QtWidgets.QPushButton(self.centralwidget)

self.btn_get.setGeometry(QtCore.QRect(556, 400, 126, 30))

self.btn_get.setObjectName("btn_get")

self.btn_clear_address = QtWidgets.QPushButton(self.centralwidget)

self.btn_clear_address.setGeometry(QtCore.QRect(570, 360, 101, 26))

self.btn_clear_address.setObjectName("btn_clear_address")

self.lb_text = QtWidgets.QLabel(self.centralwidget)

self.lb_text.setGeometry(QtCore.QRect(20, 20, 91, 16))

self.lb_text.setObjectName("lb_text")

self.rbtn_java = QtWidgets.QRadioButton(self.centralwidget)

self.rbtn_java.setGeometry(QtCore.QRect(570, 90, 115, 19))

self.rbtn_java.setObjectName("rbtn_java")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值