0

这是我的代码。

 self.bid += 1
 name = "ct %d" % self.bid
 self.newct = wx.BitmapButton(self, -1, pic, pos = pos, size=(33,33), style = wx.NO_BORDER, name = name)
 dbox=wx.TextEntryDialog(None, "Enter the Value", 'Button Info', "")
    if dbox.ShowModal()==wx.ID_OK:
        value=dbox.GetValue()
 btdict = {'button id': self.bid, 'value': value}


 self.newct.SetToolTip(wx.ToolTip('ID: %d, Value: %d' %(self.bid, value)))

之后如何找回名字?

我正在使用一个需要创建动态数量的位图按钮的工具,这些按钮可以在面板周围拖动。当我有多个按钮时,很难将一个与另一个区分开来,因此我希望为每个显示按钮名称的按钮添加一个工具提示。

另外我在这里收到错误“TypeError:%d 格式:需要一个数字,而不是 unicode”

self.newct.SetToolTip(wx.ToolTip('ID: %d, Value: %d' %(self.bid, value))

提前致谢!

4

1 回答 1

1

要获取按钮的名称,只需使用GetName()方法。按钮的名称可以在构造函数(wx.BitmapButton(self,..., name = someName))中设置,也可以在创建按钮后使用SetName()方法。在您的代码中,value似乎是按钮的新名称,因此您应该在获取value.

于 2013-03-10T11:09:54.780 回答