Qt银行管理系统——初始界面功能函数_其他

2.功能函数

(2)其他功能函数
另外所有功能函数的过程都大差不差,所以我总结其中一个功能函数,那就选查询余额,因为查询余额稍微复杂一些些,毕竟要返回余额到客户端

客户端新建一个类balance来存放

balance.h

#ifndef BALANCE_H
#define BALANCE_H

#include <QWidget>
#include <QDialog>

namespace Ui {
class Balance;
}

class Balance : public QDialog
{
Q_OBJECT

public:
explicit Balance(QWidget *parent = 0);
~Balance();

private slots:
void on_ExitButton_clicked();

void on_checkButton_clicked();     //确认查询按钮

private:
Ui::Balance *ui;
};

#endif // BALANCE_H


balance.cpp

#include "balance.h"
#include "ui_balance.h"
#include "share.h"        //存方全局变量的类,这里要用到已经连接上的客户端
extern Cilent *MyClient;
extern QString username;
extern QString reciveData;

Balance::Balance(QWidget *parent) :
QDialog(parent),
ui(new Ui::Balance)
{
ui->setupUi(this);

}

Balance::~Balance()
{
delete ui;
}

/******************构造函数用不改,只添加两个按钮的槽函数就行*******************/
void Balance::on_ExitButton_clicked()    //返回
{
this->close();
}

void Balance::on_checkButton_clicked()        //确认查询,向服务器发送数据
{
QString name =ui->nameEdit->text();
QString str = QString("3,%1").arg(name);        //功能函数标志位为3,将要查询的客户的name封装并发送到服务器
MyClient-> TCPwrite(str);
}

//下面附这个的ui界面

Qt银行管理系统——初始界面功能函数_其他


服务器的处理
case 3:balanceChoice();break;//查询余额

.............................................

void MyServerWindow::balanceChoice()
{
section1 = Bag.section(",",1,1);
QString TempStr = QString("用户名%1").arg(section1);
qDebug()<<TempStr.toUtf8().data();
QString sendStr = mysql->balanceChoice(section1);        //通过mysql类的查询函数,传回客户余额。
QString sendbuf = QString("余额还剩%1元,0").arg(sendStr);        //发回给客户端的信息,后面的标志位无用,为了严谨,补个数字
qDebug()<<"sendbuf "<<sendbuf;
ServerWrite(sendbuf);
}

...........................................................

QString Banksql::balanceChoice(QString username)
{
QString str = QString("select * from customer where name='%1'").arg(username);
QSqlQuery query;
query.exec(str);
while(query.next())
{
qDebug()<<"余额"<<query.value(4).toString();        //value函数就是返回查询到的信息,value(0)表示第1列的数据,往往是ID(我第一列是ID,我第四列才是Banlance
//附上一张数据库的图
Qt银行管理系统——初始界面功能函数_其他

return query.value(4).toString();
}
return "choice error";
}