我正在尝试制作一个窗口画布类型的矩形,这是一个图像,如果你有问题,理解我的意思,

有没有办法在wxpython中做到这一点?(还有,有没有办法将其设置为自动调整为窗口宽度-20px?),因此窗口周围的半径,并将调整为用户的窗口大小。
发布于 2011-11-04 04:30:21
编辑:我在Windows频道上询问,一个叫"r4z“的家伙想出了以下对我在Windows7上工作的代码的编辑。
import wx
########################################################################
class MyPanel(wx.Panel):
    """"""
    #----------------------------------------------------------------------
    def __init__(self, parent):
        """Constructor"""
        wx.Panel.__init__(self, parent)
        self.Bind(wx.EVT_PAINT, self.OnPaint)
    #----------------------------------------------------------------------
    def OnPaint(self, event):
        """"""
        pdc = wx.PaintDC(self)
        try:
            dc = wx.GCDC(pdc)
        except:
            dc = pdc
        w, h = self.GetSizeTuple()
        w = w - 10
        h = h - 10
        dc.Clear()
        dc.DrawRectangle(x=5, y=5, width=w, height=h)
#----------------------------------------------------------------------
def OnSize(event):
    event.EventObject.Refresh()
    event.Skip()
if __name__ == "__main__":
    app = wx.App(False)
    frame = wx.Frame(None, title="Test")
    panel = MyPanel(frame)
    frame.Bind(wx.EVT_SIZE, OnSize)
    frame.Show()
    app.MainLoop()或者,您可以查看wx.StaticBox小部件。
编辑#2:你也可以像这样设置框架的样式,跳过整个OnSize业务:
frame = wx.Frame(None, title="Test", style=wx.DEFAULT_FRAME_STYLE|wx.FULL_REPAINT_ON_RESIZE)https://stackoverflow.com/questions/8000987
复制相似问题