用户在wxPython

时间:2017-12-03 03:32:49

标签: python window wxpython

我试图找到一种获取窗口水平长度的方法,以防用户改变它,因为如果我不这样做,我需要显示的文本有时会被切断。我在macOS上使用python 3.6.1,使用wx(wxPython)库。

2 个答案:

答案 0 :(得分:0)

假设您的意思是宽度,水平长度,您可以使用:

widget.size

表示小部件的大小;宽度为widget.Size[0],高度为widget.Size[1]

同样基于this,您可以限制设置窗口小部件的最小大小,以便用户无法将其调整为小于:{/ p>

widget.SetMinSize(wx.Size(320,240))

这是一个示例代码:

import wx

root = wx.App()
frame = wx.Frame(None, -1, 'win.py')
frame.SetDimensions(0,0,320,480)
frame.SetMinSize(wx.Size(320,240))
frame.Show()

print(frame.Size[0])
root.MainLoop()

答案 1 :(得分:0)

GetSize()用于您感兴趣的小部件。
它返回(宽度,高度) 运行此代码并调整窗口大小。

import wx

def size_change(event):
    width,height = event.GetSize()
    print ("Width =",width,"Height =",height)

app = wx.App()
frame = wx.Frame(None, -1, 'Get Size Test')
frame.SetSize(500,250)
frame.Bind(wx.EVT_SIZE, size_change)
frame.Show()

print ("Original Size =",frame.GetSize())

app.MainLoop()