我们可以在文本小部件中编写时间吗

时间:2013-07-20 07:59:20

标签: python tkinter

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

delete(startindex [,endindex])

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

insert(index [,string]...)

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

感谢。

1 个答案:

答案 0 :(得分:0)

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()

<强> UPDATE2

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()