在Qt小部件中打印结果而非控制台

1 投票
1 回答
997 浏览
提问于 2025-04-17 05:42

我正在把我的控制台应用程序移植到QT图形界面上。这个应用程序从一个网站获取数据,然后在控制台中逐行打印结果(我使用的是spyder)。每一行都是几个字符串。现在我想给这个应用程序加一个图形界面,这样其他人也可以使用它。 我用QT设计器设计了一个不错的界面。在一个主模块中,我调用了这个用户界面。现在我正在尝试把我的应用程序和这个图形界面“连接”起来。因为我对Qt(使用PySide)还很陌生,所以我想一步一步来学习。 现在我想在一个小部件(比如QListView)中逐行显示(“打印”)结果。你能给我一个例子,让["这是第一行", "这是第二行"]在QT小部件中显示为两行吗?谢谢。

1 个回答

1

我通常使用 QTextBrowser 来做一个“日志”窗口。

  1. 首先在你的主窗口里创建一个 QTextBrowser 组件(比如 self.log_widget = QTextBrowser())。
  2. 把它放到某个布局里,这样它才能显示出来,成为窗口的一部分。
  3. 用 append 方法把日志信息添加进去(这个方法可以接收一个字符串)。例如 self.log_widget.append('Hello')

QTextBrowser 是一个功能强大的组件,它还可以接受 HTML 格式的内容,方便输出格式化的信息。

撰写回答