C
Qt VNC 服务器 - VncChat 示例
演示如何创建一个简单应用程序,它使用 Qt VNC 服务器。
VncChat 演示了 Qt VNC 服务器 模块的使用。
示例是一个非常基本且杂乱的聊天应用程序,它由一个文本编辑器组成,在 VNC® 兼容客户中公开,任何人在任何时间都可以编辑。
文本编辑器和其框架被一个 VncItem 包围,导致它可以通过连接自动共享。
VncItem { id: grabber anchors.fill: parent vncPort: -1 Rectangle { id: editorFrame anchors.fill: parent anchors.margins: window.width * 0.1 radius: window.width * 0.1 color: "gainsboro" TextArea { id: textArea anchors.fill: parent anchors.margins: window.width * 0.1 background: null placeholderText: "Say something nice" placeholderTextColor: "darkslategrey" } } }
只共享 VncItem 的内容,因此围绕它的彩色框架和应用程序标题仅在本地可见。
为 VncItem 请求的端口设置为 -1。
vncPort: -1
这意味着服务器将循环从端口 5900 到 5999,直到找到一个可用端口。如果服务器运行在默认端口 5900 已被其他应用程序(例如远程桌面共享机制)占用的机器上,自动选择端口可能很方便。实际选择的端口信息将被显示,以便可以与客户共享。
Label { id: portLabel anchors.top: titleLabel.bottom anchors.horizontalCenter: activeRect.horizontalCenter text: grabber.serverState === VncItem.Connected || grabber.serverState === VncItem.Listening ? "(Port " + grabber.vncPort + " is open for business)" : (grabber.serverState === VncItem.InitializationFailed ? "(Error initializing server)" : "") font.pixelSize: window.height * 0.015 }
最后,本地运行的程序有一个围绕 VncItem 的框架,其颜色取决于客户端是否已连接。在屏幕截图中,这是深海绿,表示已连接客户端。如果没有客户端连接,它将是“鲑鱼”颜色。
color: grabber.serverState === VncItem.Connected ? "darkseagreen" : "salmon"
文件
在某些 Qt 许可证下可用。
了解更多。