程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了按下了列表中的哪个按钮?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决按下了列表中的哪个按钮??

开发过程中遇到按下了列表中的哪个按钮?的问题如何解决?下面主要结合日常开发的经验,给出你关于按下了列表中的哪个按钮?的解决方法建议,希望对你解决按下了列表中的哪个按钮?有所启发或帮助;

我的窗口中有一个按钮,按下时会创建另一个按钮。我保留了添加的按钮列表。按钮的创建使用相同的方法,因此每个按钮使用相同的命令:

def addMacro(self):
    # find the CAN pane
    for i,s in enumerate(self.objectPanes):
        if str(s).find('.can') != -1:
            canPane = self.objectPanes[i]

    # Create the message List
    messages = []
    func = messageData[self.messagename.get()][2]
    if func != "InvalID message number":
        addresses = self.getAddresses()
        # Form the message.  If too long,it will return multiple packets
        messages = func(canPane.ch0[0],int(messageData[self.messagename.get()][1]),addresses,self.var,self.funcVars,'macro')
        print('Macro messages = ',messages)
        for msg in messages:
            messageComplete,link,message,parsed,mname,parsedIDentifIEr,messageTime,IDentifIEr = \
                manageFilterlinks(msg,self.messageList,self.bits)
        #i = len(self.macrobuttons) - 1

    # Create the new button
    self.macrobuttons.append([tk.button(master=self.macroBtnFrame,text=self.messagename.get(),command=self.macroClick),IDentifIEr,message])

    # Bind right click to the button
    i = len(self.macrobuttons) - 1
    self.macrobuttons[i][0].bind('<button-3>',self.macroRightClick)

    # Place the button(s) in a grID
    x = 0
    y = 0
    for macro in self.macrobuttons:
        macro[0].grID(row=x,column=y,padx=(5,0),pady=(5,0))
        y += 1
        if y == 5:
            y = 0
            x += 1

按下任何创建的按钮时调用的方法是macroClick:

def macroClick(self):
    print('Macro Click')
    print('Self = ',self)
    print('Macro Children = ',self.macroBtnFrame.children)
    for btn in self.macrobuttons:
        print(btn)
        if btn[0] == self:
            print('Send message: ',btn[1],btn[2])

此方法中的代码目前仅用于测试。我希望能够访问按钮列表 self.macrobuttons,以获取在方法 addMacro() 中使用这行代码添加的添加参数(标识符和消息):

    self.macrobuttons.append([tk.button(master=self.macroBtnFrame,message])

我遇到的问题是我不知道点击了网格中的哪个按钮,所以我不知道要从列表中的哪个项目中绘制。

有什么想法吗?

谢谢,

瑞克

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的按下了列表中的哪个按钮?全部内容,希望文章能够帮你解决按下了列表中的哪个按钮?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: