0

不确定这是否适合 Stack 的问题,但我有一个在 QT(KDE System Guard)中运行的应用程序。我希望它与我的许多其他监控系统聚合到一个浏览器窗口中。我知道通常我会为以下内容扔掉一个 iFrame:

  <iframe src="http://pathToMyNetworkMonitors.com"></iframe>

但是由于 QT 在它自己的浏览器中运行,我不确定我是否可以做到这一点。我想知道是否有人尝试过这个或其他一些解决方法。谢谢。

4

2 回答 2

0

Qt 应用程序不会“在浏览器中”运行,它和其他任何应用程序一样都是本机应用程序。它(通常)没有网络服务器,也没有(通常)与网络服务器集成的方法,因此它的输出不是网络浏览器可以访问的。

您可能会感到困惑,因为某些 Qt 应用程序使用 Webkit (qtwebkit) 将网页作为其 ui 的一部分呈现,但并非所有 Qt 应用程序都是如此。

有 emscripten-qt 项目,它将 Qt 工具包移植到 emscripten,允许编译许多 Qt 应用程序以在浏览器中运行。但是,我怀疑 ksysguard 是否可以完全发挥作用。

于 2013-03-12T21:40:58.230 回答
0

你可以去寻找有问题的 Qt 应用程序的源代码,然后用另一个渠道重建它以获取信息。例如,去添加一个 QUdpServer...

http://qt-project.org/doc/qt-4.8/qudpsocket.html#details

http://qt-project.org/doc/qt-4.8/network-broadcastsender.html

让这个 UdpServer 发布您想要查看的信息,并针对您的网页进行格式化。最初,您可能只是让它打印当前统计信息,或最后一分钟统计信息的历史记录。稍后您可以使用 Html 5 Canvas 或其他工具生成绘图。

确保端口和 IP 地址在您希望能够访问的计算机上可见。

现在,您可以在远程浏览器中看到您的系统监控。

一旦你完成了所有这些,一定要为 KDE 社区发布你的编辑。

希望有帮助。

于 2013-03-12T22:10:30.127 回答