wxPython ウインドウサイズを固定する方法

まくまく
まくまく
人気のGUIライブラリwxPythonで作成したウインドウサイズを固定してみます。PCで使うアプリケーションだったら固定のほうが使い勝手が良い場合も多いですしね。



出力


ウインドウサイズを800×500に固定しました。あとレスポンシブ非対応にもしています。

ウインドウサイズは8行目「self.SetSize(800, 500)」のところ

レスポンシブ非対応は31行目と32行目のところで記載しています。

サンプルプログラム

#ライブラリのインポート
import wx

class MyFrame(wx.Frame):

    def __init__(self, *args, **kw):
        super(MyFrame, self).__init__(*args, **kw)
        self.SetSize(800, 500)
        
        self.pnl = wx.Panel(self)

        #テキストを作成
        self.text1 = wx.StaticText(self, label="Image貼り付けテスト")

        #画像を読み込み
        image = wx.Image('img1.jpg')
        self.bitmap = image.ConvertToBitmap()        
        self.bitmap2 = wx.StaticBitmap(self,-1, self.bitmap)
       
        #Sizerを作成
        sizer = wx.BoxSizer(orient=wx.VERTICAL)
        #テキストと画像をSizerに追加
        sizer.Add(self.text1, 1) 
        sizer.Add(self.bitmap2, 9)

        #sizerをセット
        self.SetSizer(sizer)

if __name__ == '__main__':
    app = wx.App()
    style = wx.DEFAULT_FRAME_STYLE & ~(wx.RESIZE_BORDER)
    frm = MyFrame(None, title='wxPythonのテスト', style=style)
    frm.Show()
    app.MainLoop()
タイトルとURLをコピーしました