QT 笔记6 | Qt网络编程
回顧:
1 Qt多線程(QThread)
1)創建線程
方法1:moveToThread
方法2:繼承QThread,重寫run函數
2)線程同步
互斥鎖:QMutex
信號量:QSemaphore
2 Qt數據庫(Sqlite)
1)創建數據表
CREATE TABLE 表名 (列名 類型 [約束],…);
2)刪除數據表
DROP TABLE 表名;
3)插入數據(增)
INSERT INTO 表名 (列名,…) VALUES(數值,…);
4)刪除數據(刪)
DELETE FROM 表名 WHERE 條件表達式;
5)修改數據(改)
UPDATE 表名 SET 列名=新數值,… WHERE 條件表達式;
6)查詢數據
SELECT 列名,… FROM 表名 WHERE 條件表達式 ORDER BY 列名 ASC/DESC;
3 在Qt中使用Sqlite數據庫(QT += sql)
1)建立Qt應用程序和數據庫連接:QSqlDatabase
2)執行Sql語句:QSqlQuery
3)獲取查詢結果集:QSqlQueryModel
案例:學生成績管理系統
1)工程名:Student
2)類名:StudentDialog
3)界面設計
–》拖拽需要使用的控件
ComboBox(2個,組合框)
PushButton(4個)
Label(3個)
LineEdit(3個)
TableView(1個,表格:用于顯示查詢結果集)
–》設置對象名
ComboBox:valueComboBox condComboBox
Pusbutton:sortButton insertButton deleteButton updateButton
LineEdit: idEdit nameEdit scoreEdit
Label:默認
TableView:默認
一 Qt網絡編程
1 網絡編程基礎
1)網絡協議模型(OSI七層)
–》應用層:HTTP
–》表示層
–》會話層
–》傳輸層:TCP、UDP
–》網絡層:IP
–》數據鏈路層
–》物理層
2)IP地址
–》概念:互聯網中的唯一地址標識
–》IP地址表示方式
IPv4(32位整數)、IPv6(128位整數)
點分十進制:“192.168.15.100”
無符號整數:0xC0A80F64
–》查看IP地址命令
windows系統:ipconfig
linux系統:ifconfig
–》通過IP地址判斷兩臺主機能否通信
ping 對方IP地址;
–》特殊的IP地址
“0.0.0.0”//任意地址,常用于服務器
“127.0.0.1”//本地環回地址,常用于測試
"255.255.255.255"廣播地址
2 Qt中和網絡編程相關類(QT += network)
1)套接字基類:QAbstractSocket
2)TCP通信套接字:QTcpSocket
3)TCP服務器:QTcpServer
4)UDP通信套接字:QUdpSocket
5)IP地址:QHostAddress
案例:基于TCP協議的網絡聊天室
1)TCP服務器(Server)
–》使用QTcpServer創建服務器
–》響應客戶端連接請求,保存和客戶端通信套接字
–》實時接收客戶端發來的消息
–》轉發消息給所有的客戶端
2)TCP客戶端(Client)
–》使用QTcpSocket創建和服務器通信的套接字
–》向服務器發送連接請求
–》輸入聊天消息,發送到服務器
–》接收服務器轉發的消息并顯示
周四任務:為聊天室客戶端增加登錄對話框,程序啟動時先顯示登錄窗口,登錄成功在進入聊天室客戶端界面。
總結
以上是生活随笔為你收集整理的QT 笔记6 | Qt网络编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hadoop常用命令总结
- 下一篇: [react] props.childr