zoukankan      html  css  js  c++  java
  • wxpython example

    #!/usr/bin/env python
    #----------------------------------------------------------------------------
    # Name:         test7.py
    # Purpose:      A minimal wxPython test program
    #
    # Author:       Robin Dunn
    #
    # Created:      A long time ago, in a galaxy far, far away...
    # Copyright:    (c) 1998 by Total Control Software
    # Licence:      wxWidgets license
    #----------------------------------------------------------------------------
    
    # NOTE: this sample requires wxPython 2.6 or newer
    
    # import the wxPython GUI package
    import wx
    
    
    # Create a new frame class, derived from the wxPython Frame.
    class MyFrame(wx.Frame):
    
        def __init__(self, parent, id, title):
            # First, call the base class' __init__ method to create the frame
            wx.Frame.__init__(self, parent, id, title)
    
            # Associate some events with methods of this class
            self.Bind(wx.EVT_SIZE, self.OnSize)
            self.Bind(wx.EVT_MOVE, self.OnMove)
    
            # Add a panel and some controls to display the size and position
            panel = wx.Panel(self, -1)
            label1 = wx.StaticText(panel, -1, "Size:")
            label2 = wx.StaticText(panel, -1, "Pos:")
            self.sizeCtrl = wx.TextCtrl(panel, -1, "", style=wx.TE_READONLY)
            self.posCtrl = wx.TextCtrl(panel, -1, "", style=wx.TE_READONLY)
            self.panel = panel
    
            # Use some sizers for layout of the widgets
            sizer = wx.FlexGridSizer(2, 2, 5, 5)
            sizer.Add(label1)
            sizer.Add(self.sizeCtrl)
            sizer.Add(label2)
            sizer.Add(self.posCtrl)
    
            border = wx.BoxSizer()
            border.Add(sizer, 0, wx.ALL, 15)
            panel.SetSizerAndFit(border)
            self.Fit()
    
    
        # This method is called by the System when the window is resized,
        # because of the association above.
        def OnSize(self, event):
            size = event.GetSize()
            self.sizeCtrl.SetValue("%s, %s" % (size.width, size.height))
    
            # tell the event system to continue looking for an event handler,
            # so the default handler will get called.
            event.Skip()
    
        # This method is called by the System when the window is moved,
        # because of the association above.
        def OnMove(self, event):
            pos = event.GetPosition()
            self.posCtrl.SetValue("%s, %s" % (pos.x, pos.y))
    
    
    
    
    # Every wxWidgets application must have a class derived from wx.App
    class MyApp(wx.App):
    
        # wxWindows calls this method to initialize the application
        def OnInit(self):
    
            # Create an instance of our customized Frame class
            frame = MyFrame(None, -1, "This is a test")
            frame.Show(True)
    
            # Tell wxWindows that this is our main window
            self.SetTopWindow(frame)
    
            # Return a success flag
            return True
    
    
    
    app = MyApp(0)     # Create an instance of the application class
    app.MainLoop()     # Tell it to start processing events
    

     

  • 相关阅读:
    【APIO2008】免费道路[最小生成树 kruskal]
    【2019.8.13】
    【矩阵】
    [POI2008]BLO-Blockade [tarjan 割点]
    poj1458 最长公共子序列 (动态规划)
    最长上升子序列
    poj1163 数字三角形 (动态规划)
    快速幂 (分治)
    求排列的逆序数(分治)
    快速排序 (分治)
  • 原文地址:https://www.cnblogs.com/jefree/p/4458905.html
Copyright © 2011-2022 走看看