わかりました、皆さん、
完成のために自分の質問に答えます。Afaik、プレートボタンを XRC ファイルに追加することはできませんが、Mike Driscoll が提案したように (バンドルに感謝します!)、「不明な」変数、必要に応じてプレースホルダーを XRC ファイルに挿入することは可能です。あなたが望む場所で。以下に示すように:
<object class="unknown" name="A_Name">
<variables></variables>
</object>
その後、コード例に進み、コードを入力しましたが、以下のものと同じです (明らかに、ご覧になるために一般化されています)。これまでのところ動作しているようですが、self.MyBtnに加えられた設定を変更することはできず、フラグのみが効果があるように見えましたが、それはサイザー設定に固有のものである可能性もあります。そうでないと思われる場合は、お気軽にお知らせください。私は常に、より優れた、より効率的な、またはより洗練されたソリューションに関心があります。
class MyFrame(wx.Frame):
def __init__(self, parent):
self.res = xrc.XmlResource("my_xrc_file.xrc")
self.frame = self.res.LoadFrame("MyFrame")
imageFile = "/a/path/to/your/file"
png = wx.Image(imageFile, wx.BITMAP_TYPE_ANY).ConvertToBitmap()
self.MyBtn = wx.lib.platebtn.PlateButton(self.frame, bmp=png,
style=platebtn.PB_STYLE_TOGGLE|platebtn.PB_STYLE_DEFAULT)
self.PlateBtn = self.res.AttachUnknownControl("MyBtn",
self.MyBtn, self.frame) # this returns a bool
それがあなたの何人かを助けることを願っています。