首先在.h里对这几个函数进行声明
public:
void paintEvent(QPaintEvent *event); //绘画事件
void mousePressEvent(QMouseEvent *event); //鼠标点击事件重载
void GetCapt(); //验证码
其次在.cpp进行实现,对验证码内容存入数组的操作不能放在paintevent里面,否则会进入死循环数组内容一直刷新导致验证码一直输入不正确。
在构造函数里使用一次以下函数,这是刚进入窗口时的第一次
this->GetCapt();
之后每次进行鼠标点击图片都会进行刷新验证码
void Login::mousePressEvent(QMouseEvent *event) //鼠标点击事件
{
this->GetCapt();
update();
}
void Login::GetCapt() //生成验证码数 数组
{
code.clear();
//随机数字