准备实现一个在线聊天工具,界面参考微信
环境是VS+Qt5.9.1+Mysql8.0,模式是C/S模式
所有通信基于服务器转发,最终实现登录、注册、私聊、群聊、文件传输、离线消息加载等功能
所有功能分模块一步步实现,本章先实现简单的登录和聊天界面
本章内容
- 创建服务器和客户端工程
- 设计登录和聊天窗口
- 实现窗口切换
第一步先创建两个新的vs工程
一个是服务器工程 MyChatToolServer,这个后面会用到,创建完先不管他
一个是客户端工程 MyChatToolClient,接下来的一些操作都是基于这个工程进行开发
(这里分别起了两个vs工程,也可以放在一个解决方案里,不过不适合新手调试)
接下来,创建一个登陆界面
添加一个登陆界面的类,用Qt designer进行布局设计,基本界面如下
主要控件元素包括头像、ID、密码、登陆按钮、注册按钮和一个关闭按钮(右上角)
在头文件中声明相关槽函数
LoginWindow.h文件
#pragma once
#include <QWidget>
#include "ui_LoginWindow.h"
class LoginWindow : public QWidget
{
Q_OBJECT
public:
LoginWindow(QWidget *parent = nullptr);
~LoginWindow();
signals:
void signalLoginOK(); //登录成功信号
private slots:
void slotLoginBtnClicked(); //登录按钮点击事件
void slotRegisterBtnClicked(); //注册按钮点击事件
void slotCloseBtnClicked();