【问题标题】:Python tkinter print to GUI [duplicate]Python tkinter 打印到 GUI [重复]
【发布时间】:2017-04-26 02:51:56
【问题描述】:

如何使用 tkinter 将文本打印到我的 GUI 而不是在控制台中? 例如,如果我在控制台中打印“Test”而不是打印 Test,它应该将 Test 打印到 GUI 的下一行。我需要它来处理大量打印行。

【问题讨论】:

  • 我不确定要尝试什么,Message() 函数需要一个特定的位置,所以我认为这不起作用。有没有逐行打印的功能?
  • def print(stuff): <put stuff in GUI> 也许?
  • @TheBandit 你没有在你的问题中提到任何关于Message() 函数的内容,我认为你需要更好地描述你已经编写的代码。

标签: python tkinter


【解决方案1】:

注意:我不确定您所说的“打印”是什么意思,如果这不是您要查找的内容,请添加评论

至于在tkinter 窗口上“打印”,有几种不同的方法。

一个好方法是label 小部件,这是一个包含文本的小部件,您可以更改文本的字体、大小、颜色和对齐方式。

mylabel = Label(master, text = "ExampleText", font = ("Purisa", 12)) # master can be a window or a frame
mylabel.pack() # packs the label on to the master

另一种方法是在 canvas 上创建文本

mycanvas = Canvas(...)
mycanvas.create_text(x = 100, y = 100, text = "ExampleText")

【讨论】:

  • 我必须制作大量的行,而我需要打印的行数是随机的。如果我用master有位置我不知道做多少,用canvas我也不知道做多少。
  • 您可以在Label 中包含多行并使用create_text,您只需在每行之间放置一个\n。例如:mylabel = Label(master, text = "line1\nline2\nline3")
  • 谢谢你,除了位置都搞砸了,我大部分时间都在工作。有没有办法使链接可点击? (打印的行都是链接,但它不允许我点击它们)
  • 你可能会在这里找到一些东西:stackoverflow.com/questions/23482748/… 唯一的问题是,你可能需要为每个链接创建一个单独的标签。
猜你喜欢
  • 1970-01-01
  • 2014-09-01
  • 2023-04-08
  • 1970-01-01
  • 2017-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多