资源简介
用QtCreator写的一个抽奖程序。功能包括选择人员名单,选择获奖等级。
代码片段和文件信息
#include “dialog.h“
#include “ui_dialog.h“
#include
#include
#include
Dialog::Dialog(QWidget *parent) :
QDialog(parent)
ui(new Ui::Dialog)
{
//ui->namelab->setText(“renyuan“);
isstart = false;
ui->setupUi(this);
}
void Dialog::changename()
{
QFileDialog *fileDialog = new QFileDialog(this);
fileDialog->setWindowtitle(tr(“Open Image“));
fileDialog->setDirectory(“.“);
//fileDialog->setFilter(tr(“Image Files(*.jpg *.png)“));
if(fileDialog->exec() == QDialog::Accepted)
{
path = fileDialog->selectedFiles()[0];
readname(path);
QMessageBox::information(NULL tr(“Path“) tr(“You selected “) + path);
}
else
{
QMessageBox::information(NULL tr(“Path“) tr(“You didn‘t select any files.“));
}
}
void Dialog::readname(QString namepath)
{
//读取人员名单
QFile file(namepath);
if(file.open(QFile::ReadOnly))
{
QTextStream stream(&file);
while(!stream.atEnd())
{
namelist.append(stream.readLine());
}
file.close();
}
else
{
QMessageBox::critical(this tr(“error“) file.errorString());
}
}
void Dialog::start()
{
// //将读取到的人员名单滚动显示在lab中
// for(int i=0; i // {
// ui->namelab->setText(namelist[i]);
// //更改标签内容后一定要更新
// update();
// if(i >= namelist.count())
// {
// i = 0;
// }
// }
if(isstart == true)
{
return;
}
if(!namelist.count())
{
return;
}
m_timer = new QTimer(this);
connect(m_timer SIGNAL(timeout()) this SLOT(on_timer()));
m_timer->start(100);
isstart = true;
}
void Dialog::prizenumchange()
{
isstart = false;
}
void Dialog::stop()
{
//int size = namelist.count();
//int winner = (qrand()%size);
//ui->onelab->setText(namelist[winner]);
m_timer->stop();
//connect(m_timerSIGNAL(timeout())thisSLOT(stop()));
winname = ui->namelab->text();
//判断中奖类型
winnum = ui->prizenum->currentIndex();
switch (winnum)
{
case 0://一等奖
{
ui->onelab->setText(winname);
update();
break;
}
case 1://二等奖
{
ui->twolab->setText(winname);
break;
}
case 2://三等奖
{
ui->thrlab->setText(winname);
break;
}
}
}
void Dialog::on_timer()
{
if(namelist.count() == 0)
{
return;
}
static int i = 0;
ui->namelab->setText(namelist[i]);
update();
i++;
if(i >= namelist.count())
{
i = 0;
}
}
Dialog::~Dialog()
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-01-24 11:50 CCchoujiang\
文件 129526 2019-01-22 23:54 CCchoujiang\0.png
文件 129526 2019-01-22 19:51 CCchoujiang\1.jpg
文件 1077 2019-01-22 23:35 CCchoujiang\CCchoujiang.pro
文件 124447 2019-01-24 11:50 CCchoujiang\CCchoujiang.pro.user
文件 3120 2019-01-23 13:08 CCchoujiang\dialog.cpp
文件 729 2019-01-23 13:07 CCchoujiang\dialog.h
文件 9006 2019-01-23 13:11 CCchoujiang\dialog.ui
文件 226 2019-01-23 02:37 CCchoujiang\image.qrc
文件 376 2019-01-23 01:00 CCchoujiang\main.cpp
文件 25 2019-02-14 14:16 CCchoujiang\name.txt
- 上一篇:Learning with kernel
- 下一篇:c6140数控改造
相关资源
- 基于QT的P2P共享文件系统
- QT 使用飞秋协议与飞秋通信源码
- 基于Qt的局域网即时通信系统聊天软件
- 基于Qt的类似QQ好友列表抽屉效果的实
- OsgQt已经编译好的版本
- qrencode生成二维码的QT DEMO
- 北斗短报文一体机-Qt版(适用于Ubun
- delphi mqtt
- QT动画显示源代码
- 基于v4l的视频采集显示程序。外加Q
- QT GraphicsView
- Qt 获取exe版本名称,描述等详细信息
- 基于QT的中国象棋项目
- Qt 扫雷游戏设计一
- linux下QT程序读写配置文件小程序
- Qt客户端和服务器传输图片、文本
-
QT xm
l文件的读写,增减,更新。 - 使用Qt实现网页自动刷新工具 demo
- Qt Creator+OpenCV410(vc14)开发的图片查
- 人脸识别Qt,opencv2.4.9
- 嵌入式设备Qt程序的升级
- 基于qt+opencv的人脸识别183028
- QZXing和QT和VS的二维码解码
- 用QT5写的视频播放器182732
- Qt实现Linux任务管理器SysMonitor.zip
- QT局域网聊天传输
- qt刻度尺控件
- 推箱子源代码——QT的便捷
- 一种QImage加载大图片的解决方案
- Qt 根据手绘板的压力值画线的一个小
评论
共有 条评论