本專案的原理是,多客戶端通過後台的不斷截圖,通過tcp socket 傳送到伺服器端進行專案,目前我**裡面設定最大監控4臺電腦,當然你也可以自己設定哈。
//標頭檔案tcpimageclient.h
#ifndef tcpimageclient_h
#define tcpimageclient_h
#include
#include
#include
class tcpimageclient:public qobject
;#endif // tcpimageclient_h
#include"tcpimageclient.h"
#include
tcpimageclient::tcpimageclient(qstring ipaddr,qobject *parent):qobject(parent)
tcpimageclient::~tcpimageclient()
void tcpimageclient::sendimagedata(qbytearray imagedata)
void tcpimageclient::connecthost()
//實現很簡單,就沒有什麼注釋了
#ifndef desktopclient_h
#define desktopclient_h
#include
#include
#include"tcpimageclient.h"
#include
#include
#include
#include
#include
namespace ui
class desktopclient : public qwidget
;#endif // desktopclient_h
#include "desktopclient.h"
#include "ui_desktopclient.h"
#include
#include
#include
#include
#include
#include
#include
#include
desktopclient::desktopclient(qwidget *parent) :
qwidget(parent),
ui(new ui::desktopclient)
desktopclient::~desktopclient()
void desktopclient::sendcutimagedata()
void desktopclient::handleclose()
void desktopclient::readconfig()
_ipaddr = settings.value("ipaddr").tostring();
if(settings.value("machineid").tostring().isempty())
_machineid = settings.value("machineid").toint();
if(settings.value("frame").tostring().isempty())
_frame = settings.value("frame").toint();
settings.endgroup();
}
服務端
#ifndef tcpimageserver_h
#define tcpimageserver_h
#include
#include
#include
#include
class tcpimageserver:public qobject
;#endif // tcpimageserver_h
#include"tcpimageserver.h"
#include
#include
#include
#include
tcpimageserver::tcpimageserver(qobject* parent):qobject(parent)
tcpimageserver::~tcpimageserver()
void tcpimageserver::newconnect()
void tcpimageserver::readmessage()
void tcpimageserver::xmldata()//解析一張資料
}}void tcpimageserver::removeclient()
}}
websocket實現多屏互動 多屏互動解決方案
前引 什麼是一對多多屏互動 一對多多屏互動則是接收端螢幕有2個以上,實現主講人可以任意選擇乙個大螢幕為接收端,實現windows,mac,ios,android系統桌面多屏顯示以及聲音輸出,主要應用場景則為會議室 數位化教室 智慧型展廳等顯示螢幕較多的應用場景。一對多多屏互動實現模式 awind奇機...
Qt實現桌面截圖
實現桌面截圖,軟體如下 圖1 桌面截圖 主要介紹乙個方法 grabwindow wid window,int x 0,int y 0,int width 1,int height 1 建立並返回乙個qpixmap,通過抓取給定視窗的內容 x y width height 引數 x y 指定視窗中的偏...
Qt 實現超時鎖屏
最近使用qt實現超時鎖屏的功能 工控機觸控螢幕 當手長時間不觸控螢幕的時候,程式超時會顯示鎖屏視窗。主視窗超時顯示鎖屏視窗 系統視窗超時顯示鎖屏視窗 首先開啟乙個執行緒用於qtimer定時器計時,最開始進入軟體開啟定時器計時,超時則顯示鎖屏視窗 而手觸控螢幕會觸發滑鼠點選事件,則停止計時 而手離開螢...