在 C/C++ 中将输出外壳流(cout 或 printf)显示到文本视图小部件 (GTK+ 3)
Displaying output shell stream (cout or printf) to Textview widget (GTK+ 3) in C/C++?
我想使用textview小部件来显示整个程序中的输出,有一堆cout和printf,我在其中显示特定信息,现在我想在GTK+中使用GUI来显示我在命令外壳上看到的输出。
我在我需要使用 GIOchannel 的某个地方读到,在其他地方,他们只是建议写到 gtk_text_buffer_insert(),问题是后一个函数需要字符指针,我显示双精度和浮点数。选角不起作用,也不应该真正起作用。
我该怎么做?
您可以创建写入小组件的流缓冲区。您将从std::streambuf
将字符串发送到任何小部件函数并使用使用此流缓冲区初始化的std::ostream
派生一个类。如果无法将流传递到使用它的函数,则可以替换std::cout
的流缓冲区(使用 std::cout.rdbuf(&sbuf)
)。但是,如果您还希望这些输出转到您的小部件,则需要替换您的printf()
。
相关文章:
- 尝试使用 WinBGI 显示文本时出现编译器错误
- 动态填充的组合框不显示文本,列表未定义
- QTreeWidgetItem 突出显示文本问题
- 如何通过单击按钮在QTextEdit中显示文本?
- 在C Windows程序中显示文本文件内容
- findChild 从不显示文本浏览器
- C 在同一行中左右显示文本
- 使用 C++ 中的向量在新行上显示文本文件中的列
- 如何使用 Opengl 库显示文本文件中的 3D 点
- Qt. 方法显示文本() 如果我在 QStyledItemDelegate 中定义了 paint() 方法不起作用
- 如何在C 中的OpenGL中通过矩形显示文本
- 如何使用键盘输入和sf ::文本在SFML中添加一种文本框以显示文本字符串
- QMessageBox:无法在框中显示文本(使用 c++)
- 延迟窗口在 MFC 上显示文本
- Visual Studio代码集成的终端未显示文本
- SFML-不显示文本
- qprogressdialog未显示文本标签
- C++程序无法正确显示文本文件中的内容
- 如何在不显示文本的情况下分配Win32编辑控件的窗口名称
- SDL2 OpenGL SDL2_TTF:显示文本