国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真

這篇具有很好參考價(jià)值的文章主要介紹了Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

程序示例精選

Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真

如需安裝運(yùn)行環(huán)境或遠(yuǎn)程調(diào)試,見文章底部個(gè)人QQ名片,由專業(yè)技術(shù)人員遠(yuǎn)程協(xié)助!

前言

這篇博客針對<<Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真>>編寫代碼,代碼整潔,規(guī)則,易讀。 學(xué)習(xí)與應(yīng)用推薦首選。


文章目錄

一、所需工具軟件

二、使用步驟

????????1. 引入庫

????????2. 代碼實(shí)現(xiàn)

? ? ? ? 3. 運(yùn)行結(jié)果

三、在線協(xié)助

一、所需工具軟件

1. VS, Qt

2. C++

二、使用步驟

1.引入庫

#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_MainWindow.h"
#include<iostream>
#include <QThread>

#include <chrono>
#include <QObject>
#include <QThread>
#include <QDebug>
#include <QFile>
#include <QTimer>
#include <QMutex>
#include <QWaitCondition>

#include <QDebug>

#include<QImage>
#include<QPixmap>
#include<QTransform>
#include<QPropertyAnimation>
#include<QGraphicsPixmapItem>
#include<QGraphicsScene>
#include <QtConcurrent/QtConcurrent>

2. 代碼實(shí)現(xiàn)

代碼如下:

VMarqueeLabel::VMarqueeLabel(QWidget *parent)
	: QLabel(parent)
{
	connect(&m_Timer, &QTimer::timeout, this, [=] {
		if (isVisible()) {
			m_PosX -= 1;
			if (parent) {
				parent->update();
			}
			else {
				update();
			}

		}
	});
}

VMarqueeLabel::~VMarqueeLabel()
{
	clear();
}

void VMarqueeLabel::clear()
{
	m_Timer.stop();
	m_PosX = ORIGIN_X;
	QLabel::clear();
}

void VMarqueeLabel::setText(const QString& text)
{
	clear();
	QString content = QStringLiteral("<font style='font-family:MicrosoftYaHei;font-size:14px;color: #01EEC3;'>%1</font>").arg(text);
	m_Timer.start(10);
	adjustSize();
	m_PosX = width();
}

void VMarqueeLabel::paintEvent(QPaintEvent * evt)
{
	//計(jì)算x,y坐標(biāo)
	QTextDocument doc;
	doc.setHtml(text());

	int height = doc.documentLayout()->documentSize().height();
	int y = (this->height() - height) / 2;
	//繪制
	QPainter painter(this);
	//先畫背景
	QStyleOption opt;
	opt.init(this);
	style()->drawPrimitive(QStyle::PE_Widget, &opt, &painter, this);
	painter.translate(m_PosX, y);
	doc.drawContents(&painter);
}


QSimpleLed::ColorGroup QSimpleLed::smColorPalette[6] {
    // CUSTOM
    { QColor(0, 0, 0), QColor(0, 0, 0), QColor(0, 0, 0), QColor(0, 0, 0) },
    // RED
    { QColor(255, 0, 0), QColor(191, 0, 0), QColor(28, 0, 0), QColor(128, 0, 0) },
    // GREEN
    { QColor(0, 255, 0), QColor(0, 191, 0), QColor(0, 28, 0), QColor(0, 128, 0) },
    // BLUE
    { QColor(0, 0, 255), QColor(0, 0, 191), QColor(0, 0, 28), QColor(0, 0, 128) },
    // YELLOW
    { QColor(255, 255, 0), QColor(191, 191, 0), QColor(28, 28, 0), QColor(128, 128, 0) },
    // ORANGE
    { QColor(255, 165, 0), QColor(255, 113, 1), QColor(20, 8, 5), QColor(99, 39, 24) },
};

QSimpleLed::QSimpleLed(QWidget *parent, QSimpleLed::LEDCOLOR color)
    : QAbstractButton(parent)
    , mColor(color)
{
    setCheckable(true);
    setMinimumSize(64, 64);
}

void QSimpleLed::setStates(QSimpleLed::LEDSTATES states)
{
    switch (states) {
    case ON:
        resetStatus();
        setChecked(true);
        mStates = ON;
        break;

    case OFF:
        resetStatus();
        break;

    case BLINK:
        resetStatus();

        if (!mBlinkTimer) {
            mBlinkTimer = new QTimer(this);
            connect(mBlinkTimer, &QTimer::timeout, this, &QSimpleLed::onBlinkTimerTimeout);
        }
        mBlinkTimer->setInterval(mInterval);
        mBlinkTimer->start();
        mStates = BLINK;
        break;

    default:
        qDebug() << "LED - unknown states!!!";
    }

    update();
}

void QSimpleLed::paintEvent(QPaintEvent *event)
{
    Q_UNUSED(event);

    qreal realSize = qMin(width(), height());

    QRadialGradient radialGent;

    //
    // gradient - 1
    radialGent = QRadialGradient(QPointF(-500, -500)
                                 , 1500
                                 , QPointF(-500, -500));
    radialGent.setColorAt(0, QColor(224, 224, 224));
    radialGent.setColorAt(1, QColor(28, 28, 28));

    QPainter painter(this);

    painter.setBrush(QBrush(radialGent));
    painter.drawEllipse(QPointF(0, 0), 500, 500);

    //
    // gradient - 2
    radialGent = QRadialGradient(QPointF(500, 500)
                                 , 1500
                                 , QPointF(500, 500));
    radialGent.setColorAt(0, QColor(224, 224, 224));
    radialGent.setColorAt(1, QColor(28, 28, 28));

    painter.setBrush(QBrush(radialGent));
    painter.drawEllipse(QPointF(0, 0), 450, 450);

    if (isChecked()) {
        //
        // gradient - 3
        radialGent = QRadialGradient(QPointF(-500, -500)
                                     , 1500
                                     , QPointF(-500, -500));
        radialGent.setColorAt(0, smColorPalette[mColor].on0);
        radialGent.setColorAt(1, smColorPalette[mColor].on1);

    } else {
        //
        // gradient - 4
        radialGent = QRadialGradient(QPointF(500, 500)
                                     , 1500
                                     , QPointF(500, 500));
        radialGent.setColorAt(0, smColorPalette[mColor].off0);
        radialGent.setColorAt(1, smColorPalette[mColor].off1);
    }

    painter.setBrush(QBrush(radialGent));
    painter.drawEllipse(QPoint(0, 0), 400, 400);


}

void QSimpleLed::resizeEvent(QResizeEvent *event)
{
    Q_UNUSED(event);

    update();
}

void QSimpleLed::mousePressEvent(QMouseEvent *event)
{
    Q_UNUSED(event);
}

void QSimpleLed::onBlinkTimerTimeout()
{
    setChecked(!isChecked());
}

3. 運(yùn)行結(jié)果

?Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真,C++,qt,c++,開發(fā)語言,visual studio,仿真,算法

Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真,C++,qt,c++,開發(fā)語言,visual studio,仿真,算法??

三、在線協(xié)助:

如需安裝運(yùn)行環(huán)境或遠(yuǎn)程調(diào)試,見文章底部個(gè)人 QQ 名片,由專業(yè)技術(shù)人員遠(yuǎn)程協(xié)助!
1)遠(yuǎn)程安裝運(yùn)行環(huán)境,代碼調(diào)試
2)Qt, C++, Python入門指導(dǎo)
3)界面美化
4)軟件制作

當(dāng)前文章連接:Python+Qt桌面端與網(wǎng)頁端人工客服溝通工具_(dá)alicema1111的博客-CSDN博客

博主推薦文章:python人臉識別統(tǒng)計(jì)人數(shù)qt窗體-CSDN博客

博主推薦文章:Python Yolov5火焰煙霧識別源碼分享-CSDN博客

? ? ? ? ? ? ? ? ? ? ? ? ?Python OpenCV識別行人入口進(jìn)出人數(shù)統(tǒng)計(jì)_python識別人數(shù)-CSDN博客

個(gè)人博客主頁:alicema1111的博客_CSDN博客-Python,C++,網(wǎng)頁領(lǐng)域博主

博主所有文章點(diǎn)這里alicema1111的博客_CSDN博客-Python,C++,網(wǎng)頁領(lǐng)域博主文章來源地址http://www.zghlxwxcb.cn/news/detail-660038.html

到了這里,關(guān)于Qt+C++跑馬燈-指示燈-風(fēng)扇-虛線燈帶-動(dòng)畫仿真的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Winform自定義控件 —— 指示燈

    Winform自定義控件 —— 指示燈

    ? ? ? ?? 在開始閱讀本文之前,如果您有學(xué)習(xí)創(chuàng)建自定義控件庫并在其他項(xiàng)目中引用的需求,請參考: 在Visual Studio中創(chuàng)建自定義Winform控件庫并在其他解決方案中引用 https://blog.csdn.net/YMGogre/article/details/126508042 目錄 1、應(yīng)用場景:? 1.1、本文的應(yīng)用場景:? 2、所需資源:?

    2024年02月04日
    瀏覽(23)
  • 路由器指示燈怎么看?

    很多時(shí)候,我們不需要登錄電腦或路由的管理界面,只通過路由器的指示燈就可以了解路由器的工作狀態(tài),本文和大家分享一下如何看懂路由器的指示燈 1、電源指示燈,持續(xù)穩(wěn)定發(fā)光表示與電源連接正確 2、lNTERNET口指示燈,常亮表示已連接,有數(shù)據(jù)傳輸閃亮 3、無線狀態(tài)指

    2024年02月07日
    瀏覽(24)
  • 路由器指示燈不亮了怎么辦 路由器上的信號指示燈不亮的解決辦法總結(jié)

    最近,接到不少網(wǎng)友的反應(yīng)。說自己的無線路由器信號指示燈不亮,剛開始以為是路由器壞額,后來檢測發(fā)現(xiàn)不是路由器的問題。今天小編就總結(jié)一下導(dǎo)致這種情況可能存在的問題,當(dāng)然額,不排除小編總結(jié)的方法不全面。呵呵! 路由器信號指示燈 一、信號指示燈不亮 信號

    2024年02月06日
    瀏覽(42)
  • 路由器指示燈有哪些含義?

    無線網(wǎng)絡(luò)的需求越來越大,無線路由器也早已經(jīng)進(jìn)千家萬戶,智能手機(jī)、平板以及筆記本等無線設(shè)備的WIFI上網(wǎng)就主要靠無線路由器發(fā)送無線網(wǎng)絡(luò)。無線網(wǎng)絡(luò)有時(shí)候也會(huì)問題,導(dǎo)致電腦或者智能手機(jī)設(shè)備也會(huì)出現(xiàn)一些鏈接上問題,這個(gè)時(shí)候我們通??梢酝ㄟ^路由器指示燈來判斷

    2024年02月08日
    瀏覽(24)
  • IBM服務(wù)器指示燈報(bào)警說明

    ps ? 指示燈:當(dāng)此指示燈發(fā)亮?xí)r,表明電源2 出現(xiàn)故障。 temp 指示燈:當(dāng)此指示燈發(fā)亮?xí)r,表明系統(tǒng)溫度超出閾值級別。 fan:當(dāng)此指示燈點(diǎn)亮?xí)r,表明散熱風(fēng)扇或電源風(fēng)扇出現(xiàn)故障或運(yùn)行太慢。風(fēng)扇發(fā)生故障還會(huì)導(dǎo)致over temp 指示燈發(fā)亮。 link指示燈:當(dāng)此指示燈發(fā)亮?xí)r,網(wǎng)卡

    2024年03月09日
    瀏覽(27)
  • 服務(wù)器指示燈功能解析和代碼示例

    服務(wù)器指示燈是服務(wù)器硬件上的小燈,用于顯示服務(wù)器的狀態(tài)和運(yùn)行情況。這些指示燈通常位于服務(wù)器前面板或后面板上,并根據(jù)不同的顏色和閃爍模式來表示不同的狀態(tài)。在本文中,我們將詳細(xì)解析服務(wù)器指示燈的功能,并提供一些示例代碼來控制這些指示燈。 服務(wù)器指示

    2024年02月20日
    瀏覽(24)
  • 3.跑馬燈

    3.跑馬燈

    推挽模式輸出:因?yàn)長ED0和LED1陽極都是3.3V,需要將陰極設(shè)置為低電平才可以點(diǎn)亮LED; 操作io口時(shí),必須引入源文件和頭文件; 關(guān)于時(shí)鐘的文件存放在rcc中; void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct); 作用:初始化一個(gè)或多個(gè)io口(同一組)的工作方式和速度, 該函數(shù)

    2024年02月10日
    瀏覽(23)
  • 跑馬燈實(shí)驗(yàn)

    跑馬燈實(shí)驗(yàn)

    ???????? 1.熟悉龍芯實(shí)驗(yàn)開發(fā)板、熟悉 VIVADO 的編譯環(huán)境及操作流程。 ????????2.掌握 FPGA 編程入門知識、利用門級方法實(shí)現(xiàn)簡單邏輯電路。 ????????3.繼續(xù)學(xué)習(xí) Verilog HDL 語法、掌握跑馬燈的設(shè)計(jì)、熟悉調(diào)試過程。 ???????? 本次實(shí)驗(yàn)用 Verilog HDL 語言來描述 6 個(gè)不

    2024年02月04日
    瀏覽(26)
  • Android --- 跑馬燈效果

    Android --- 跑馬燈效果

    跑馬燈效果主要使用的控件為TextView,其中涉及的幾個(gè)標(biāo)簽如下所示: android:ellipsize If set, causes words that are longer than the view is wide to be ellipsized instead of broken in the middle. You will often also want to set scrollHorizontally or singleLine as well so that the text as a whole is also constrained to a single line in

    2023年04月08日
    瀏覽(25)
  • 電腦指示燈閃爍,但是無法開機(jī)的解決方案

    設(shè)備型號:聯(lián)想 ThinkPad T14s 故障詳情 :電腦使用后未關(guān)機(jī)鎖屏合蓋后,再次使用時(shí)開關(guān)機(jī)指示燈一直閃爍,但是無法正常開機(jī)。 其他嘗試方法:嘗試過長按開關(guān)機(jī)按鍵(無效),也聽從聯(lián)想維修客服指導(dǎo) 長按15秒開關(guān)機(jī)按鍵 反復(fù)3次,仍舊無果! 有效解決方法 :ThinkPad背板

    2024年02月01日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包