【发布时间】:2016-09-10 13:08:14
【问题描述】:
我正在尝试在 wx.Frame 中获取给定大小的 wx.Panel。
我试过下面的代码,明确指定wx.Panel的大小,但没有成功。
当我运行应用程序时,我发现 wx.Panel 的宽度大于 100 像素。
Actual wx.Panel width is about 125pixels instead of 100
有人可以帮我找出这里没有正确使用的东西吗?
#!/bin/env python
import wx
# App Class
class MyAppTest6(wx.App):
def OnInit(self):
frame = AppFrame(title = u'Hello World', pos=(50, 60), size=(150, 250))
frame.Show()
#self.SetTopWindow(frame)
return True
# Form Panel, 300 pixels Panel
class Form(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent, size=(100, 100))
self.SetBackgroundColour('RED')
self.SetInitialSize(
(100,100)
)
self.SetSize(
(100,100)
)
# AppFrame
class AppFrame(wx.Frame):
def __init__(self, title, pos, size):
wx.Frame.__init__(self, None, -1, title, pos, size)
# Define color
self.SetBackgroundColour('LIGHTGREY')
# Add elements
self.form = Form(self)
# Layout
sizer = wx.BoxSizer(wx.HORIZONTAL)
sizer.AddStretchSpacer()
sizer.Add(self.form, 0, wx.CENTER)
sizer.AddStretchSpacer()
self.SetSizer(sizer)
if __name__ == '__main__':
app = MyAppTest6(False)
app.MainLoop()
【问题讨论】:
标签: python-2.7 wxpython wxwidgets