1

wx.lib.platebtn.PlateButtonウィジェットをxrcファイルに含める方法を知っていますか?

これまでのところ、wxWidgetsに共通のウィジェットを含める方法しか見つけていませんが、これはwxpythonに固有のものだと思います(間違っているかもしれませんが)。

XmlResourceHandlerのデモを理解しようとしましたが、それはPanelに対してのみ行われます。この特定のケースでも、まだ良いチュートリアルを見つけることができませんでした。

皆さんが提供できるアドバイスや、優れたチュートリアルへのリンクをいただければ幸いです。

どうもありがとう。

4

2 に答える 2

1

わかりました、皆さん、

完成のために自分の質問に答えます。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

それがあなたの何人かを助けることを願っています。

于 2012-04-25T11:16:08.553 に答える
0

私が思い出したように、XRC で独自のウィジェットを定義する方法がありましたが、それについてどこで読んだのかよく思い出せません。次の記事の最後にある参照を確認してください: http://www.blog.pythonlibrary.org/2010/10/28/wxpython-an-xrced-tutorial/

wxPython のデモに付属の XRC エディターを使用して、「不明な」コントロールを追加できることは知っています。そんな風にできることがあります。http://wiki.wxpython.org/UsingXmlResources#AttachUnknownControl_and_Control_Sizeまたは Robin Dunn の回答 ( https://groups.google.com/forum/?fromgroups#!topic/wxPython-users/4VAXC7WldFo)を参照してください。

于 2012-04-20T19:10:11.803 に答える