Qt之等待提示框三(QLabel进行多图片切换)
来源:互联网 发布:mysql msvcr120.dll 编辑:程序博客网 时间:2024/06/05 10:48
Qt之等待提示框三(QLabel进行多图片切换)
(2013-07-29 19:04:00)转载▼
标签:
qt
qt等待提示框
qt等待效果
等待提示框
it
分类: Qt效果如下:
中间的等待效果就是利用图标的切换实现的,那么今天咱们也实现类似的效果:
效果如下:
使用图标如下:
代码如下:
#include "loading_widget.h"
LoadingWidget::LoadingWidget(QWidget *parent)
: QWidget(parent)
{
index = 1;
loading_label = new QLabel();
account_label = new QLabel();
waiting_label = new QLabel();
QPixmap pixmap(QString(":/loginDialog/") + QString::number(index, 10));
loading_label->setFixedSize(pixmap.size());
loading_label->setPixmap(pixmap);
loading_label->setScaledContents(true);
QVBoxLayout *v_layout = new QVBoxLayout();
v_layout->addWidget(account_label);
v_layout->addWidget(waiting_label);
v_layout->setSpacing(15);
v_layout->setContentsMargins(0, 0, 0, 0);
QHBoxLayout *h_layout = new QHBoxLayout();
h_layout->addStretch();
h_layout->addWidget(loading_label);
h_layout->addLayout(v_layout);
h_layout->addStretch();
h_layout->setSpacing(20);
h_layout->setContentsMargins(0, 0, 0, 30);
timer = new QTimer(this);
timer->setInterval(100);
connect(timer, &QTimer::timeout, this, &LoadingWidget::updatePixmap);
this->setLayout(h_layout);
this->translateLanguage();
}
LoadingWidget::~LoadingWidget()
{
}
void LoadingWidget::translateLanguage()
{
waiting_label->setText(tr("waiting"));
}
void LoadingWidget::setAccount(QString account)
{
this->account = account;
}
void LoadingWidget::start(bool is_start)
{
if(is_start)
{
//进行账号的转化,防止过长显示不全,过长用...代替
QString elided_text;
bool is_elided = Util::updateText(account, 200, elided_text);
if(!is_elided)
{
elided_text = account;
}
account_label->setText(tr("hi") + elided_text);
timer->start();
}
else
{
timer->stop();
index = 1;
loading_label->setPixmap(QPixmap(QString(":/loginDialog/") + QString::number(index, 10)));
}
}
void LoadingWidget::updatePixmap()
{
//若当前图标下标超过8表示到达末尾,则重新计数
index++;
if(index > 8)
{
index = 1;
}
QPixmap pixmap(":/loginDialog/" + QString::number(index, 10));
loading_label->setPixmap(pixmap);
}
- Qt之等待提示框三(QLabel进行多图片切换)
- Qt之等待提示框(QLabel进行多图片切换)
- Qt之等待提示框(QMovie播放gif图片,等待文字变化等)
- Qt之等待提示框(QPropertyAnimation)
- Qt之等待提示框(QTimer)
- Qt之QProgressIndicator(等待提示框)
- Qt之等待提示框(QMovie)
- Qt之等待提示框(QTimer)
- Qt实现等待提示框(图片和movie实现)
- Qt之图片自适应QLabel的大小
- Qt学习之QLabel
- Qt之QLabel
- qt ui 之QLabel
- Qt之QLabel
- Qt之QLabel
- Qt之QLabel
- qt QLabel 显示网络图片
- Qt 之 QLabel 设置面罩
- Java使用memcached
- Qt之界面实现技巧
- CString 中Releasebuffer GetBuffer 相关实现原理
- 通向架构师的道路(第十天)之Axis2 Web Service(一)
- 我的centos6.2无线驱动安装--- 一路还很顺
- Qt之等待提示框三(QLabel进行多图片切换)
- 简单列单词
- thinkphp 无线级别分类
- Android中LayoutParams的用法
- 黑马程序员-----异常(练习)
- 网站里多出一个abc.ldb 文件
- 从1到任意数的平方根
- Qt之界面切换(360、新浪、人人界面,多语化切换随心所欲)
- 如何让WebBrowser同步执行