File: dialog.py

package info (click to toggle)
wxpython4.0 4.0.7%2Bdfsg-10
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 210,992 kB
  • sloc: cpp: 888,989; python: 226,808; makefile: 52,078; ansic: 45,837; sh: 3,014; xml: 1,534; javascript: 436; perl: 264
file content (37 lines) | stat: -rw-r--r-- 1,078 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import wx

class MyDialog(wx.Dialog):
    def __init__(self, *args, **kw):
        wx.Dialog.__init__(self, *args, **kw)

        # Widgets
        txt = wx.StaticText(self, label="Hello.  I am a Dialog!  Hear me roar!")
        ok = wx.Button(self, wx.ID_OK)
        ok.SetDefault()
        cancel = wx.Button(self, wx.ID_CANCEL)

        # Layout
        self.Sizer = wx.BoxSizer(wx.VERTICAL)  # using the Sizer property
        self.Sizer.Add(txt, 0, wx.ALL, 10)
        self.Sizer.Add(wx.StaticLine(self), 0, wx.EXPAND)

        # make a new sizer to hold the buttons
        row = wx.BoxSizer(wx.HORIZONTAL)
        row.Add((1,1), 1)  # a spacer that gets a portion of the free space
        row.Add(ok)
        row.Add((1,1), 1)
        row.Add(cancel)
        row.Add((1,1), 1)

        # add that sizer to the main sizer
        self.Sizer.Add(row, 0, wx.EXPAND|wx.ALL, 10)

        # size the dialog to fit the content managed by the sizer
        self.Fit()


app = wx.App()
dlg = MyDialog(None, title="Hello Dialog")
val = dlg.ShowModal()
dlg.Destroy()
app.MainLoop()