【问题标题】:can we code time in text widget?我们可以在文本小部件中编码时间吗?
【发布时间】:2013-07-20 07:59:20
【问题描述】:

是否可以使用文本小部件编码时间HH:MM:SS? 我知道我们可以使用标签小部件来做到这一点。我的代码处理文本小部件,并希望在 TKinter 窗口的任何角落显示时间。 如果可能,如何使用标签小部件删除和插入文本。文本小部件默认具有以下方法。

delete(startindex [,endindex])

此方法删除特定字符或文本范围。

insert(index [,string]...)

此方法在指定的索引位置插入字符串。 在我的代码中,文本必须一直被删除和插入。

谢谢。

【问题讨论】:

    标签: python tkinter


    【解决方案1】:

    1.0 删除到end

    import datetime
    
    text.delete('1.0', 'end')
    text.insert('end', datetime.datetime.now().strftime('%H:%M:%S')) # text.insert('end', label['text'])
    

    label['text'] = datetime.datetime.now().strftime('%H:%M:%S')
    

    右下角显示条目

    import datetime
    from Tkinter import * # from tkinter import *   # Python 3.x
    
    root = Tk()
    root.geometry('500x500')
    frame = Frame(root)
    frame.pack(side=BOTTOM, fill=BOTH)
    
    entry = Entry(frame)
    entry.pack(side=RIGHT)
    entry.insert(END, datetime.datetime.now().strftime('%H:%M:%S'))
    root.mainloop()
    

    def __init__(self):
        tk.Tk.__init__(self)
        self.geometry("1360x750")
        frameLabel = tk.Frame(self)
        self.text = tk.Text(frameLabel)
        frameLabel.pack(side=BOTTOM, fill=BOTH)
        self.text.pack(side=RIGHT)
        self.text.insert('end', 'TEST')
        self.queue = Queue.Queue()
        thread = SerialThread(self.queue)
        thread.start()
        self.process_serial()
    

    更新2

    import datetime
    from Tkinter import * # from tkinter import *   # Python 3.x
    
    root = Tk()
    root.geometry('500x500')
    frame = Frame(root)
    frame.pack(side=BOTTOM, fill=BOTH)
    
    label = Label(frame)
    label.pack(side=RIGHT)
    label['text'] = datetime.datetime.now().strftime('%H:%M:%S')
    root.mainloop()
    

    【讨论】:

    • 我的确切说法是:我的代码在文本小部件上,但我想将代码更改为标签小部件以使用锚选项。根据我的要求,我需要在 tkinter 窗口上删除和插入文本。我认为在标签小部件中没有删除和插入文本的选项。
    • 谢谢,第一个代码正在运行,但我需要时间显示在窗口的右下角
    • 谢谢先生,我在我的代码中试过了,但没有成功。如果我发送我的代码,你能告诉我如何在右下角的窗口上显示时间。
    • 接收到的数据使用文本小部件打印在框架上,在文本小部件中没有在窗口中心打印接收到的数据的选项。所以我决定将我的代码从使用文本小部件更改为标签小部件。标签小部件的默认值为anchor=CENTER,它将文本在可用空间中居中。然后在我希望时钟显示在右下角之后。请帮助我,我是 python 新手。
    • @vaasu,检查添加的代码。 (我在你的代码中更新了App.__init__)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 1970-01-01
    • 2010-10-28
    • 2021-06-15
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    相关资源
    最近更新 更多