step4.加入按钮的点击事件

在wxPython中为按钮设置相应事件是通过Bind来设置的,通过设置 触发事件(点击或松开等),回调函数触发控件三个参数

设置按钮的点击事件

#绑定点击事件,保存按钮
frame.Bind(wx.EVT_BUTTON,saveCLick,mhV.saveBtn)
#绑定点击事件,开始按钮
frame.Bind(wx.EVT_BUTTON,saveCLick,mhV.beginBtn)

这样就能在点击保存按钮后,进入到saveClick()的函数中处理事件。

在saveClick()中我们先判断当前选择,并作出修改模型中的标识,以及输出显示。

def saveClick(event):
	# tea = mhV.teachChe.GetValue()
	mhModel.printStr = ('当前已选择任务:\n')
	if mhV.teachChe.GetValue() == True:
		mhModel.printStr = mhModel.printStr + ('自动师门\n')
		mhModel.isTeach = True
	if mhV.demonChe.GetValue() == True:
		mhModel.printStr = mhModel.printStr + ('秘境降妖\n')
		mhModel.isDemon = True
	if mhV.mapChe.GetValue() == True:
		mhModel.isMap = True
		mhModel.printStr = mhModel.printStr + ('自动宝图\n')
	if mhV.moveChe.GetValue() == True:
		mhModel.isMove = True
		mhModel.printStr = mhModel.printStr + ('自动运镖\n')
	#保存设置
	mhModel.isSave = True	
	mhV.printTextLab.SetLabel(mhModel.printStr)

运行后可看到,会根据当前选择进行输出。

对开始按钮也一样进行事件的绑定:

#绑定点击事件,开始按钮
frame.Bind(wx.EVT_BUTTON,saveClick,mhV.beginBtn)

添加函数,函数内部具体下一步再进行设计

def beginClick():
	if mhModel.isSave == True:
		#开始执行
		pass
	
	else:  		
		pass
		#提示进行保存

(另:要注意的是,实际的代码文件中,def函数是写在调用之前的)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您需要让这个代码段能够正常暂停,我来帮您修改一下。根据您提供的代码,我发现其中缺少了音频对象的创建和设置,我将在修改中加入这部分内容。下面是修改后的代码: ``` Page({ data: { isPlaying: false, animation: {}, audio: null }, onLoad: function () { // 初始化帧动画 const animation = wx.createAnimation({ duration: 1000, timingFunction: 'linear', }) this.animation = animation // 初始化音频对象 const audio = wx.createInnerAudioContext() audio.src = 'your-audio-source' // 填写你的音频源地址 this.setData({audio}) // 监听音频播放结束事件 audio.onEnded(() => { this.setData({ isPlaying: false, animation: animation.rotate(0).export() }) }) }, togglePlay: function () { const isPlaying = this.data.isPlaying const animation = this.animation const audio = this.data.audio if (isPlaying) { // 暂停播放 audio.pause() this.setData({ isPlaying: false, animation: animation.rotate(0).export() }) } else { // 开始播放 audio.play() this.setData({ isPlaying: true, animation: animation.rotate(360).export() }) } }, handleListButtonClick: function () { // 处理歌曲列表按事件 console.log('歌曲列表按') }, handlePlayPauseButtonClick: function () { // 处理播放/暂停按事件 this.togglePlay() }, handleNextButtonClick: function () { // 处理下一首按事件 console.log('下一首按') }, handlePrevButtonClick: function () { // 处理上一首按事件 console.log('上一首按') } }) ``` 在修改后的代码中,我加入了音频对象的创建和设置,您只需要将 'your-audio-source' 替换为您自己的音频源地址即可。我还在onLoad函数中监听了音频播放结束事件,当音频播放结束时,将isPlaying状态设置为false,同时将动画对象恢复到初始状态。在togglePlay函数中,我修改了播放和暂停的逻辑,使用audio.play()和audio.pause()方法来控制音频的播放和暂停,并在数据更新时,将动画对象的状态也更新到界面中。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值