PyQt5-如何设置按钮的自动重复

 时间:2026-02-12 05:10:26

1、创建一个顶层窗口,设置初始值。

from PyQt5.Qt import *


import sys
class MyTest(QWidget):
   def __init__(self):
       super().__init__()
       self.setWindowTitle('按钮重复功能')
       self.resize(400,300)
       self.setup_ui()
   def setup_ui(self):
       pass
app=QApplication(sys.argv)
test=MyTest()
test.show()
sys.exit(app.exec_())

PyQt5-如何设置按钮的自动重复

2、为窗口添加一个按钮。

def setup_ui(self):


   btn=QPushButton(self)
   btn.move(10,250)
   btn.setText('Test-Btn')

1、为按钮设置重复功能,所用函数:btn.setAutoRepeat(True) ;

①参数是布尔型,控制是否开启重复。

②所谓的自动重复就是当按钮按下,没有松开时,会不断的向外界发送信号从而触发槽函数。

PyQt5-如何设置按钮的自动重复

2、为按钮添加信号槽,测试是否有用。

btn.clicked.connect(lambda :print('按下没松开'))

可以看到,按钮按下时,会不断重复槽函数的打印功能

PyQt5-如何设置按钮的自动重复

3、获取按钮是否处在自动重复状态;使用函数:autoRepeat();

①返回的是bool值,与上面的函数正好相反。

②例如;print(btn.autoRepeat())-->True

PyQt5-如何设置按钮的自动重复

1、为按钮设置重复延时;setAutoRepeatDelay(ms)

①参数是时间,单位是毫秒(1秒=1000毫秒)

②意思是,按钮按下时等待执行重复的时间。

③例如;btn.setAutoRepeatDelay(2000),按钮按下2秒后,开始重复。

PyQt5-如何设置按钮的自动重复

2、获取延时;autoRepeateDelay()

①返回按钮按下时重复功能开始的延时时间。

②例如;print(btn.autoRepeatDelay())-->2000

PyQt5-如何设置按钮的自动重复

1、设置按钮按下重复的间隔;setAutoRepeatInterval(ms)

①参数是重复的间隔时间,毫秒。

②例如;btn.setAutoRepeatInterval(500),每隔半秒执行一次打印。

PyQt5-如何设置按钮的自动重复

2、获取重复间隔;autoRepeatInterval();

①返回按钮的重复间隔。

②例如:print(btn.autoRepeatInterval())-->500

PyQt5-如何设置按钮的自动重复

  • Java:包的定义与运行有包名的主类
  • 如何用visual studio2017编写简单C语言程序
  • C#如何通过枚举View设置ListView控件的显示方式
  • Python如何获取用户输入的数据#校园分享#
  • 华为AR路由地址转换SNAT配置命令
  • 热门搜索
    烤鱼用什么鱼最好 提前批需要什么条件 root什么意思 社保包括什么 读数和写数都从什么位起 鸿蒙是什么意思 1月9日是什么星座 什么是公租房 居士是什么意思 涅盘什么意思