1

以下は私のコードです:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import wx

class Example(wx.Frame):

    def __init__(self):
        #super(Example, self).__init__(parent, title=title, size=(300, 200))
        wx.Frame.__init__(self, None, wx.ID_ANY, 'wxButton', pos=(300, 150), size=(320, 250))
        self.button1 = wx.Button(self, id=-1, label='Button1', pos=(8, 8), size=(10, 20))
        self.button1.Bind(wx.EVT_BUTTON, self.button1Click)
        self.Centre()
        self.Show()


    def button1Click(self,event):
        #self.button1.Hide()
        self.SetTitle("Button1 clicked")

if __name__ == '__main__':

    app = wx.App()
    Example()
    app.MainLoop()

実際には、フレームのボタン1がボタンのように見えることを期待しています-少し持ち上げてフレームの中央に配置します-しかし、それはフレーム全体に拡大しているだけです。また、テキスト Button1 は、ボタンのような感じのないテキストのように見えますか?

私は何を間違っていますか?

4

1 に答える 1

1

パネルを作成する(そしてパネルをボタンの親として設定する)と問題が解決するようです(テキストが見えるようにボタンの幅を広げました...)

#!/usr/bin/python
# -*- coding: utf-8 -*-

import wx

class Example(wx.Frame):

    def __init__(self):
        wx.Frame.__init__(self, None, wx.ID_ANY, 'wxButton', pos=(300, 150), size=(320, 250))
        self.panel = wx.Panel(self, -1)
        self.button1 = wx.Button(self.panel, id=-1, label='Button1', pos=(8, 8), size=(100, 20))
        self.button1.Bind(wx.EVT_BUTTON, self.button1Click)
        self.Centre()
        self.Show()

    def button1Click(self,event):
        self.SetTitle("Button1 clicked")

if __name__ == '__main__':

    app = wx.App()
    Example()
    app.MainLoop()
于 2013-11-05T09:50:24.937 に答える