1

有人可以告诉我,如何制作一个简单的 wxpython

  import wx
    import time

    class MyFrame(wx.Frame):
        """ We simply derive a new class of Frame. """
        def __init__(self, parent, title):
            wx.Frame.__init__(self, parent, title=title, size=(200,100))
            self.control = wx.TextCtrl(self, style=wx.TE_MULTILINE)
            self.Show(True)

    app = wx.App(False)
    frame = MyFrame(None, 'Small editor')

app.MainLoop()

我想知道我现在如何获取日期时间并将其显示在框架中

4

3 回答 3

3

如果您希望在 GUI 内/内显示日期时间(作为数字,而不是时钟格式),您可以使用 wx.DateTime.Now() 函数。在此处阅读 wxPython 文档中的更多详细信息。您可以输入以下内容:

now = wx.DateTime.Now()
timecheckText = wx.StaticText(panel, -1, "Sample sentence here:\t%s\n"%(now.Format("%c", wx.DateTime.PST)), (3,30))


它的作用是在 wx.StaticText 函数中输入日期时间,并在启动后打印当前日期、月份、年份、时间和时区。此外,无需“导入日期时间”,只需“导入 wx”即可。

于 2015-10-08T05:13:04.460 回答
2

“我想知道我现在如何获取日期时间并将其显示在框架中”

使用time模块获取系统时间:

import time
time.strftime('%d %m %Y')

例如如何访问这个模块。现在在 Python 解释器中,尝试help(time)阅读不同的时区命令和格式化命令,以获得所需的值。

于 2012-12-04T09:42:39.767 回答
1

你看过 wxPython 演示吗?您应该检查几个小部件。一个是模拟时钟。它真的很整洁。然后是 LEDNumberCtrl。有一个演示,它显示了实时更新的当前时间。

如果您需要显示日期,请尝试 DatePickerCtrl

更新:这是一个代码示例:

import wx

########################################################################
class MyPanel(wx.Panel):
    """"""

    #----------------------------------------------------------------------
    def __init__(self, parent):
        """Constructor"""
        wx.Panel.__init__(self, parent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        dpc = wx.DatePickerCtrl(self, size=(120,-1),
                                style = wx.DP_DROPDOWN
                                      | wx.DP_SHOWCENTURY
                                      | wx.DP_ALLOWNONE )
        self.Bind(wx.EVT_DATE_CHANGED, self.OnDateChanged, dpc)
        sizer.Add(dpc, 0, wx.ALL, 50)

        # In some cases the widget used above will be a native date
        # picker, so show the generic one too.            
        dpc = wx.GenericDatePickerCtrl(self, size=(120,-1),
                                       style = wx.TAB_TRAVERSAL
                                       | wx.DP_DROPDOWN
                                       | wx.DP_SHOWCENTURY
                                       | wx.DP_ALLOWNONE )
        self.Bind(wx.EVT_DATE_CHANGED, self.OnDateChanged, dpc)
        sizer.Add(dpc, 0, wx.LEFT, 50)


    def OnDateChanged(self, evt):
        print "OnDateChanged: %s\n" % evt.GetDate()

########################################################################
class MyFrame(wx.Frame):
    """"""

    #----------------------------------------------------------------------
    def __init__(self):
        """Constructor"""
        wx.Frame.__init__(self, parent=None, title="DatePickers")
        panel = MyPanel(self)
        self.Show()

#----------------------------------------------------------------------
if __name__ == "__main__":
    app = wx.App(False)
    frame = MyFrame()
    app.MainLoop()
于 2012-12-04T14:38:20.750 回答