⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 enrol.cpp

📁 局域网聊天室
💻 CPP
字号:
#include <QHostAddress>#include <QMessageBox>#include <QTextCodec>#include "enrol.h"Enrol::Enrol(QWidget *parent):QDialog(parent){	setupUi(this);	tcpSocket = new QTcpSocket(this);	connect(pushButton,SIGNAL(clicked()),this,SLOT(sendMsg()));	QTextCodec *chineseCodec=QTextCodec::codecForName("UTF_8");	QTextCodec::setCodecForCStrings(chineseCodec);	connect(pushButton_2,SIGNAL(clicked()),this,SLOT(close()));	connect(tcpSocket,SIGNAL(readyRead()),this,SLOT(recvMsg()));	connect(tcpSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(error()));	tcpSocket->connectToHost("192.168.0.7",8000);}int Enrol::check(){	QString str = lineEdit->text();	int n = str.size();	int i = 0;	if((n < 5) || (n > 16))		return 0;	while(str.data()[i] != '\0'){		if(((str.data()[i] >= '0')&&(str.data()[i] <= '9')) || 		   ((str.data()[i] >= 'A')&&(str.data()[i] <= 'Z')) ||		   ((str.data()[i] >= 'a')&&(str.data()[i] <= 'z')))			i++;		else			return 0;	}	QString str1 = lineEdit_2->text();	int m = str1.size();	int j = 0;	if((m < 5) || (m > 16))		return 0;	while(str1.data()[j] != '\0'){		if(((str1.data()[j] >= '0')&&(str1.data()[j] <= '9')) || 		   ((str1.data()[j] >= 'A')&&(str1.data()[j] <= 'Z')) ||		   ((str1.data()[j] >= 'a')&&(str1.data()[j] <= 'z')))			j++;		else			return 0;	}	QString str2 = lineEdit_3->text();	int r = str2.size();	int k = 0;	if((r < 5) || (r > 16))		return 0;	while(str1.data()[k] != '\0'){		if(((str2.data()[k] >= '0')&&(str2.data()[k] <= '9')) || 		   ((str2.data()[k] >= 'A')&&(str2.data()[k] <= 'Z')) ||		   ((str2.data()[k] >= 'a')&&(str2.data()[k] <= 'z')))			k++;		else			return 0;	}	if(str2==str1)		return 1;	else		return 0;}void Enrol::sendMsg(){	int n = check();	if(n){		QTextStream out(tcpSocket);		QString enrol_message;		enrol_message += "Enrol";		enrol_message += " ";		enrol_message += lineEdit->text();		enrol_message += " ";		enrol_message += lineEdit_2->text();		enrol_message += "\n";		enrol_message += '\0';		out<<enrol_message<<endl;		lineEdit->clear();		lineEdit_2->clear();		lineEdit_3->clear();	}	else{		QTextCodec *chineseCodec=QTextCodec::codecForName("UTF_8");		QTextCodec::setCodecForCStrings(chineseCodec);		QMessageBox::critical(this,"提示!","用户帐号或用户密码不合法!");	}}void Enrol::recvMsg(){	if(!tcpSocket->canReadLine())		return;	QString responseLine;	do {		responseLine += tcpSocket->readLine();	} while(tcpSocket->canReadLine());//	QMessageBox::critical(this,"enrol success",responseLine);	msgBuffer += responseLine;	if(msgBuffer=="OK@\n"){		QTextCodec *chineseCodec=QTextCodec::codecForName("UTF_8");		QTextCodec::setCodecForCStrings(chineseCodec);		QMessageBox::information(this,"提示!","注册成功!");		lineEdit->clear();		lineEdit_2->clear();		lineEdit_3->clear();		tcpSocket->close();		close();	}	if(msgBuffer=="FAIL@\n"){		QMessageBox::critical(this,"提示!","注册用户有重名!");		msgBuffer.clear();		lineEdit->clear();		lineEdit_2->clear();		lineEdit_3->clear();	}			}void Enrol::error(){	QMessageBox::critical(this,"提示","网络连接失败");	tcpSocket->close();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -