Set wx.Frame size (wxPython - wxWidgets)
<p>I am new to wxPython and I am finding some issues while seting a given size for both frames and windows (widgets). I have isolated the issue to the simplest case where I try to create a Frame of 250x250 pixels.</p>

<p>Running the code I get a window of an actual size of 295 width by 307 height (taking into consideration the WindowsÂ´s top window bar)</p>

<p>I am using Python 2.7 in Windows 10.</p>

<p>What am I missing? </p>

<pre><code>#!/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()
</code></pre>

<p>An addtional test to further show issue:</p>

<pre><code>#!/bin/env python
import wx

class MyApp(wx.App):
    def OnInit(self):
        self.frame = MyFrame(None, title="The Main Frame")
        self.SetTopWindow(self.frame)
        self.frame.Show(True)
        return True

class MyFrame(wx.Frame):
    def __init__(self, parent, id=wx.ID_ANY, title="", pos=wx.DefaultPosition, size=(400,100), style=wx.DEFAULT_FRAME_STYLE, name="MyFrame"):
        super(MyFrame, self).__init__(parent, id, title, pos, size, style, name)
        self.panel = wx.Panel(self)

if __name__ == "__main__":
    app = MyApp(False)
    app.MainLoop()
</code></pre>

<p>And the result:</p>

<p>As you can see displayed window (frame) has 482 pixels (-see Paint's bottom bar-) instead of the expected 400.</p>

<p><a href="http://i.stack.imgur.com/ZtsvE.png" rel="nofollow">Window size measured in pixels</a></p>

<p>Add this before your call to <code>app.MainLoop()</code>:</p>

<pre><code>import wx.lib.inspection
wx.lib.inspection.InspectionTool().Show()
</code></pre>

<p>That will let you easily see the actual size (and other info) for each widget in the application, like this:</p>

<p><a href="http://i.stack.imgur.com/yXaSn.png" rel="nofollow"><img src="http://i.stack.imgur.com/yXaSn.png" alt="Widget Inspection Tool"></a></p>

python python-2.7 wxpython wxwidgets