当前位置: 首页 > news >正文

电脑做服务器发布网站wordpress.商品

电脑做服务器发布网站,wordpress.商品,网站留言板样式,营销渠道一、新建项目 创建一个Qt Widget Application项目#xff0c;基类选择“QMainWindow” 二、自定义CaptchaLabel类 右击项目名#xff0c;选择Add New...” C - CClass#xff0c;点击“Choose” 更改类名CaptchaLabel#xff0c;添加基类QLabelQt Widget Application项目基类选择“QMainWindow” 二、自定义CaptchaLabel类 右击项目名选择Add New...” C - CClass点击“Choose” 更改类名CaptchaLabel添加基类QLabel点击“下一步” 默认点击完成 更改captchalabel.h代码如下 #ifndef CAPTCHALABEL_H#define CAPTCHALABEL_H#include QObject#include QLabelclass CaptchaLabel : public QLabel{public:explicit CaptchaLabel(QWidget* parent nullptr);//获取随机数QString getRandNumber() { return m_randNumber; }void generateRandNumber(int num 4);  //生成随机数protected:void paintEvent(QPaintEvent *event);  //绘制void mousePressEvent(QMouseEvent *event);  //鼠标按下private:QString m_randNumber;  //随机数};#endif // CAPTCHALABEL_H 更改captchalabel.cpp代码如下 #include captchalabel.h #include QDebug #include QRandomGenerator #include QTimer #include QPainter #include QTimeCaptchaLabel::CaptchaLabel(QWidget *parent) : QLabel(parent) {this-setMinimumSize(100, 30);  //设置最小大小this-setStyleSheet(background-color:white;);  //白色背景//随机数种子初始化qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));//生成随机数generateRandNumber(); }/** * brief CaptchaLabel::generateRandNum 生成随机数默认是四个数 * param num */ void CaptchaLabel::generateRandNumber(int num) {m_randNumber.clear();for(int i 0; i num; i){int num qrand() % 3;if(num 0)  //数字{m_randNumber QString::number(qrand()%10);}else if(num 1)  //大写字母{int temp A;m_randNumber static_castQChar(temp qrand()%26);}else if(num 2)  //小写字母{int temp a;m_randNumber static_castQChar(temp qrand()%26);}} }/** * brief CaptchaLabel::paintEvent 绘制验证码 */ void CaptchaLabel::paintEvent(QPaintEvent *) {QPainter painter(this);int num m_randNumber.size();  //几个随机数int width this-width();int height this-height();//设置字体int size (width/num) height ? (width/num) : height;QFont font;font.setPixelSize(size);  //设置字体大小font.setItalic(true);  //设置字体倾斜font.setFamily(QString(楷体));painter.setFont(font);  //若设置字体加粗有的随机数会显示不全QPen pen;//绘制随机数for(int i 0; i num; i){pen QPen(QColor(qrand()%255, qrand()%255, qrand()%255));painter.setPen(pen);int y (height-5-size) 0 ? 0 : (qrand()%(height-5-size));QRectF rect(width/num*i, y, width/num, size);//painter.drawRect(rect);  //测试时查看矩形的位置及大小//在矩形rect中绘制大小为size的随机数painter.drawText(rect, Qt::AlignHCenter|Qt::AlignBottom, m_randNumber.at(i));}//绘制干扰点for(int i 0; i (num*25); i){pen QPen(QColor(qrand()%256, qrand()%256, qrand()%256));painter.setPen(pen);painter.drawPoint(qrand()%width, qrand()%height);}//绘制干扰线for(int i 0; i num; i){pen QPen(QColor(qrand()%256, qrand()%256, qrand()%256));painter.setPen(pen);painter.drawLine(qrand()%width, qrand()%height, qrand()%width, qrand()%height);} }/*** brief CaptchaLabel::mousePressEvent 鼠标点击时更换随机数* param event*/ void CaptchaLabel::mousePressEvent(QMouseEvent *event){Q_UNUSED(event);//重新生成验证码generateRandNumber();//实时更新update(); } 三、使用自定义CaptchaLabel类 在项目的界面编辑器中添加一个QLabel右击提升为 输入类名点击“添加” 出现如下红框中的内容点击“提升” label的基类被更改为自定义CaptchaLabel类 再在界面上添加一个QLineEdit和QPushButton控件再进行垂直布局 右击PushButton选择“转到槽” 选择“clicked()”点击“OK” 生成如下代码 更改代码如下 四、运行测试 运行项目 验证码大小随着界面大小更改而更改 点击label验证码会改变 输入正确的验证码区分大小写点击“PushButton”输出“验证码正确”提示信息 输入错误的验证码区分大小写点击“PushButton”输出“验证码错误”提示信息
http://wiki.neutronadmin.com/news/16022/

相关文章:

  • you物公馆网站建设建设企业网站要多少钱
  • 管理学习网站德州手机网站建设
  • 国外做地铁设计的公司网站江西建设工程信息网站
  • 网站建设重要新深圳宝安区深圳网站建设 骏域网络
  • 建立网站 英语怎么说网站加速打开
  • 平面设计常用网站wordpress换了固定链接404
  • 购物网站如何推广wordpress建站原理
  • 火的网站建设明细报价表电子商务c2c模式
  • 网站建设样板西安网络公司网站建设
  • 中国交通建设工程监督管理局网站wordpress如何换成经典编辑器
  • 为什么找不到做网站的软件广告公司网站建设
  • 非交互式网站建网站有哪些文件夹
  • 北京沙河教做网站的黔西网站建设
  • 大连做公司网站哪家好做旅游宣传不错的网站
  • 贵阳做网站的服装设计素材网站
  • 松原手机网站开发公司电话专业的广州手机网站
  • 长沙建站找有为太极环境遵网站被做暗链报告
  • 关于建设集团公司网站的报告青岛网站建设培训
  • 公众号怎么做网站多种语言的网站
  • 上海电商网站设计河源网站搭建费用
  • 校园网站规划与建设心得高校建设思政教育网站案例
  • 如何做网站小编seo刷排名工具
  • 全能网站建设教程杭州建设网站 网站建设
  • 南昌网站网页设计中铁建设集团招标网站
  • 回力网站建设初衷微信小程序卖货平台
  • 商城网站建设价位seo运营招聘
  • 一对一直播网站开发微信网站建设平台
  • 中文域名网站建设做网站广告有哪些职位
  • 凡科网站产品导航怎么做莆田外贸网站建设
  • 衡阳微信网站开发上传网站步骤