当前位置: 首页 > news >正文

【PyQt5】实现输入延迟响应:3秒无输入后自动读取内容

思路:每次输入框内容改变,都重置 QTimer 倒计时为 3 秒;当持续 3 秒无输入后,QTimer 超时,获取当前输入框内容。


UI 代码(untitled.py):

点击查看代码
from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_Form(object):def setupUi(self, Form):Form.setObjectName("Form")Form.resize(400, 300)self.horizontalLayout = QtWidgets.QHBoxLayout(Form)self.horizontalLayout.setObjectName("horizontalLayout")self.verticalLayout = QtWidgets.QVBoxLayout()self.verticalLayout.setObjectName("verticalLayout")self.plain_text_edit = QtWidgets.QPlainTextEdit(Form)self.plain_text_edit.setObjectName("plainTextEdit")self.verticalLayout.addWidget(self.plain_text_edit)self.label = QtWidgets.QLabel(Form)self.label.setText("")self.label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)self.label.setObjectName("label")self.verticalLayout.addWidget(self.label)self.verticalLayout.setStretch(0, 1)self.verticalLayout.setStretch(1, 1)self.horizontalLayout.addLayout(self.verticalLayout)self.retranslateUi(Form)QtCore.QMetaObject.connectSlotsByName(Form)def retranslateUi(self, Form):_translate = QtCore.QCoreApplication.translateForm.setWindowTitle(_translate("Form", "Form"))

逻辑代码:

import sysfrom PyQt5.QtWidgets import *
from PyQt5.QtCore import *from untitled import Ui_Form  # UI 代码:untitled.pyclass MyWindow(QWidget, Ui_Form):def __init__(self):super(MyWindow, self).__init__()self.setupUi(self)self.plain_text_edit.textChanged.connect(self.set_timer)  # 检测输入框文本改变self.timer = QTimer()self.timer.setSingleShot(True)  # 设置为单次触发,即定时器超时后只触发一次,避免多余触发self.timer.timeout.connect(self.get_text)  # 超时(3000ms)后获取当前输入框内容def set_timer(self):print("重置 timer 倒计时为 3000ms")self.timer.start(3000)def get_text(self):print("读取 plain_text_edit 文本,并设置到 label 中")self.label.setText(self.plain_text_edit.toPlainText())app = QApplication(sys.argv)
mw = MyWindow()
mw.show()
sys.exit(app.exec_())
http://www.sczhlp.com/news/96976/

相关文章:

  • 快速建设房产网站苏州网站建设中心
  • 课程网站开发背景网站建设 没市场了吧
  • 湖北建设局网站首页网站建设公司浙江
  • 自己做的网站服务器在哪里企业网站 建设公司
  • 网站怎么做微信送红包活动痘痘怎么去除有效果
  • 网站的搜索框如何做设计公司logo大概需要多少钱
  • 福建省建设继续教育网站中国优秀设计网站
  • 河南郑州哪里可以做公司网站什么是在线设计平台
  • 四川手机网站制作烟台怎么做网站
  • 线性代数基础
  • 微积分基础
  • Windows 自带的SSH中配置X11
  • 在Kubernetes client-go库中如何有效构建CRD的informer
  • 深圳分销网站建设电商的网站开发订单返利功能
  • 专门做有机食品的网站浙江建设信息网
  • 福田网站建设公司乐云seo如何查看网站语言
  • wordpress 3d旋转seo价格
  • Metasploit Framework 6.4.88 (macOS, Linux, Windows) - 开源渗透测试框架
  • Linux中UDP网络通信机制编程探索
  • 厦门网站建设和空间东莞哪里有做网站的
  • 网站关键词优化软件wordpress 加载jquery
  • 城市宣传网站建设方案小店网站怎么做
  • 网站建设常用问题库成都建网站多少钱
  • 买拆车件上什么网站工装设计网站推荐
  • 罗湖网站建设的公司商城网站商家入驻功能
  • 建网站找兴田德润网页设计入门首先要学什么
  • 西安外贸网站搭建wordpress更改登录页面
  • 网站建设前期策划手机百度一下
  • 互联网公司怎么找网站建设客户恒信在线做彩票的是什么样的网站
  • 用nodejs做的网站做电销要在哪个网站上找资源