Disable Maximize button on the frame

Hello @Robin, Everyone,
I have frame look like below image.

I want to disable the maximize button which is present on the frame. So that no one can resize the frame and hence image will not blurred out due to resize

I have attached the code for the same. Please suggest me the solution.

import wx


class MyPanel(wx.Panel):
    def __init__(self, parent):
        super().__init__(parent)
        self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
        sizer = wx.BoxSizer(wx.HORIZONTAL)

        pn = r'test.jpg'
        self.img1=wx.Image(pn, wx.BITMAP_TYPE_JPEG)
        self.m_bitmap3 = wx.StaticBitmap(self, wx.ID_ANY, wx.Bitmap(self.img1), wx.DefaultPosition, wx.DefaultSize, 0)
        sizer.Add(self.m_bitmap3, 1, wx.EXPAND, 0)
        self.Bind(wx.EVT_SIZE, self.onResize)
        self.SetSizer(sizer)
        self.Layout()
        self.Centre(wx.BOTH)

    def __del__( self ):
        pass

    def onResize(self, event):
        #self.Layout()
        frame_size = self.GetSize()
        frame_h = (frame_size[0]-10)
        frame_w = (frame_size[1]-10)
        img1 = self.img1.Scale(frame_h,frame_w)
        self.m_bitmap3.SetBitmap(wx.Bitmap(img1))
        self.Refresh()
        self.Layout()



class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(None, title=wx.GetApp().GetAppName())

        self.CreateStatusBar(1)
        sMsg = 'wxPython ' + wx.version()
        self.SetStatusText(sMsg)

        panel = MyPanel(self)
        self.Show()


if __name__ == '__main__':
    print('Running wxPython ' + wx.version())

    app = wx.App(redirect=False)
    app.SetAppName('Image bg')
    frame = MyFrame()
    app.SetTopWindow(frame)
    app.MainLoop()

Hi,

Please try wx.DEFAULT_FRAME_STYLE^wx.RESIZE_BORDER^wx.MAXIMIZE_BOX frame style:

class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(None, title=wx.GetApp().GetAppName(), style=wx.DEFAULT_FRAME_STYLE^wx.RESIZE_BORDER^wx.MAXIMIZE_BOX)

Great ! Thank you. It’s working now