设置wx.框架大小(wxPython wxWidgets)

2024-10-02 12:29:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我是wxPython新手,在设置框架和窗口(widgets)的给定大小时,我发现了一些问题。我把这个问题隔离到一个最简单的例子中,我试图创建一个250x250像素的帧。在

运行代码我得到一个实际尺寸为295宽307高的窗口(考虑到窗口顶部的窗口栏)

我在Windows10中使用Python2.7。在

我错过了什么?在

#!/bin/env python
import wx

# App Class
class MyAppTest7(wx.App):

    def OnInit(self):

        frame = AppFrame(title = u'Hello World', pos=(50, 60), size=(250, 250))
        frame.Show()
        self.SetTopWindow(frame)
        return True

# AppFrame
class AppFrame(wx.Frame):
    def __init__(self, title, pos, size):
        wx.Frame.__init__(self, parent=None, id=-1, title=title, pos=pos, size=size)


if __name__ == '__main__':
        app = MyAppTest7(False)
        app.MainLoop()

进一步证明问题的附加测试:

^{pr2}$

结果是:

如您所见,显示的窗口(帧)有482个像素(请参见绘画的底部栏-)而不是预期的400像素。在

Window size measured in pixels


Tags: posselfappsizetitleinitdef像素
1条回答
网友
1楼 · 发布于 2024-10-02 12:29:56

在调用app.MainLoop()之前添加以下内容:

import wx.lib.inspection
wx.lib.inspection.InspectionTool().Show()

这样您就可以很容易地看到应用程序中每个小部件的实际大小(和其他信息),如下所示:

Widget Inspection Tool

相关问题 更多 >

    热门问题