实现效果:

代码:

#ifndef IMAGINIST_H
#define IMAGINIST_H #include <QtWidgets/QWidget>
#include <QtWidgets/QLabel>
#include <QtCore/QPoint>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSql>
#include <QPalette>
#include <QColor>
#include <QFont>
#include <QTimer>
#include <QTime>
#include "ui_imaginist.h" class imaginist : public QWidget
{
Q_OBJECT public:
imaginist(QWidget *parent = 0);
~imaginist();
protected:
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
private:
Ui::imaginistClass ui;
QPoint Position;
QPalette pe;
QFont font;
QTimer * timer;
QSqlDatabase db;
QColor color;
QTime time;
private slots:
void showText();
}; #endif // IMAGINIST_H
#include "imaginist.h"
#include <QLabel>
#include <QPalette>
#include <QColor>
#include <QMouseEvent>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSql>
#include <QTimer>
#include <QTime> imaginist::imaginist(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
font.setPointSize(30);
font.setBold(true); ui.showLabel->setFont(font);
ui.showLabel->setWordWrap(true); db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("muxin");
db.setUserName("root");
db.setPassword("123"); timer = new QTimer;
connect(timer, SIGNAL(timeout()), this, SLOT(showText()));
timer->start(5000);
} imaginist::~imaginist()
{
delete timer;
timer = NULL;
db.close();
} void imaginist::mousePressEvent(QMouseEvent *event)
{
if (event->button() == Qt::LeftButton)
{
Position = event->globalPos() - frameGeometry().topLeft();
event->accept();
}
else if (event->button() == Qt::RightButton)
{
close();
}
}
void imaginist::mouseMoveEvent(QMouseEvent *event)
{
move(event->globalPos() - Position);
event->accept();
} void imaginist::showText()
{
time = QTime::currentTime();
qsrand(time.msec() + time.second() * 1000);
//color = QColor((qrand() % 256, qrand() % 256, qrand() % 256));
color = QColor::fromHsl(rand() % 360, rand() % 256, rand() % 200);
pe.setColor(QPalette::WindowText, color);
ui.showLabel->setPalette(pe);
QString sql = "SELECT sentence FROM muxin WHERE id = ";
int count;
if (db.open())
{
QSqlQuery query;
query.exec("SELECT COUNT(*) FROM muxin");
while (query.next())
{
count = query.value(0).toInt();
}
sql += QString::number(qrand() % count);
query.exec(sql);
while (query.next())
{
ui.showLabel->setText(query.value(0).toString());
}
}
}
#include "imaginist.h"
#include <QtWidgets/QApplication> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
imaginist w;
w.setWindowOpacity(1.0);
w.setWindowFlags(Qt::FramelessWindowHint);
w.setAttribute(Qt::WA_TranslucentBackground);
w.show();
return a.exec();
}

QT透明显示文字的更多相关文章

  1. Qt中在图片上叠加显示文字

    Qt中在图片上叠加显示文字   QCustLabel::QCustLabel(QWidget *parent):QLabel(parent){ setPixmap(QPixmap(QString::f ...

  2. 将Form的AlphaBlend属性设置为True,之后调整Form的AlphaBlendValue属性,255为不透明,数字越小透明度越大~~~想显示文字用l

    将Form的AlphaBlend属性设置为True,之后调整Form的AlphaBlendValue属性,255为不透明,数字越小透明度越大~~~想显示文字用lable就行哈~~~直接在窗体上写字就行 ...

  3. GB2312、GBK和UTF-8三种编码以及QT中文显示乱码问题

    1.GB2312.GBK和UTF-8三种编码的简要说明 GB2312.GBK和UTF-8都是一种字符编码,除此之外,还有好多字符编码.只是对于我们中国人的应用来说,用这三种编码 比较多.简单的说一下, ...

  4. [置顶] css 背景透明,文字不透明,alpha滤镜,opacity,position:relative;

    都知道,在alpha滤镜下,背景透明了,里面的文字也会跟随透明,我们可以设置内容的position为relative可以解决这个问题 但是在position为absolute这么做却没有效果,怎么解决 ...

  5. CSS3实现背景透明,文字不透明

    最近遇到一个需求,要在图片上显示带有半透明背景的文字,效果如下图所示: 看到这个需求之后,第一反应是使用CSS3中的opacity设置元素的透明度. <!DOCTYPE html> < ...

  6. CSS实现背景透明,文字不透明

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. 【原】CSS实现背景透明,文字不透明,兼容所有浏览器

    11.11是公司成立的日子,16岁啦,我呢3岁半,感谢公司给了这样一个平台,让我得以学习和成长,这里祝愿公司发展越来越好~ 进入主题,每年11月11号是光棍节,产生于校园,本来只是一流传于年轻人的娱乐 ...

  8. CSS实现背景透明,文字不透明,兼容所有浏览器

    11.11是公司成立的日子,16岁啦,我呢3岁半,感谢公司给了这样一个平台,让我得以学习和成长,这里祝愿公司发展越来越好~ 进入主题,每年11月11号是光棍节,产生于校园,本来只是一流传于年轻人的娱乐 ...

  9. 实现password框中显示文字提示的方式

    其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就 ...

随机推荐

  1. 使用Selenium对网页元素进行定位的诸种方法

    使用Selenium进行自动化操作,首先要做的就是通过webdriver的get()方法打开一个URL链接. 在打开链接,完成页面加载之后,就可以通过Selenium提供的接口,在页面上进行各种操作了 ...

  2. 基于Jenkins的持续交付全流程设计与实践

    1 从理论开始 什么是DevOps? 近年来,随着DevOps理念的逐渐深入人心,企业逐渐意识到从看似重复的手工劳动中实现自动化流程处理,对于提高企业劳动生产力已经非常重要,尤其是面向互联网的开发者, ...

  3. Match3 Module For Game(THDN)

    介绍    THDN的核心机制为Match3的利用,本文对Match3 Gameplay进行记录,并对其进行改良.THDN作为RogueLIke性质的游戏,玩家在随机生成的dungeon里进行探索并获 ...

  4. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

  5. must appear in the GROUP BY clause or be used in an aggregate function

    今天在分组统计的时候pgsql报错 must appear in the GROUP BY clause or be used in an aggregate function,在mysql里面是可以 ...

  6. # 曹工说Spring Boot源码(10)-- Spring解析xml文件,到底从中得到了什么(context:annotation-config 解析)

    写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...

  7. Python Django配置Mysql数据库

    1 在项目中找到setting文件 打开 2 在里面找到 3 将Databases里面的数据改成 DATABASES = { 'default': { #引擎设置为Mysql 'ENGINE': 'd ...

  8. 枚举 xor

    题意:输入整数n(1<=n<=3千万),有多少对整数(a,b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b.例如:n=7时,有4对:(3,2),(5,4 ...

  9. Jenkins介绍与安装

    什么是Jenkins ​ Jenkins的优势和应用场景 ​ ​ Jenkins安装配置管理 安装Jenkins前的环境准备(Centos 7) 1.添加yum仓库源# wget -O /etc/yu ...

  10. numpy nan和inf

    一.nan和inf的简介 nan 不是一个数字 读取本地文件为flaot的时候,有缺失 inf(infinity): 无穷尽 inf: 正无穷 -inf: 负无穷 数据类型:float # 注意: 要 ...