最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Qt自定義控件實現(xiàn)線條型加載條

 更新時間:2019年12月20日 11:20:43   作者:parkchorong  
這篇文章主要為大家詳細介紹了Qt自定義控件實現(xiàn)線條型加載條,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Qt自定義控件實現(xiàn)線條型加載條的具體代碼,供大家參考,具體內(nèi)容如下

上效果圖:

思路:先畫一個線條,然后旋轉(zhuǎn)坐標(biāo)系再畫其他線條,突出顏色的線條可以畫死再旋轉(zhuǎn),也可以按照角度遞增讓特定線畫突出顏色(這里使用的是這種)。

LoadingBarA::LoadingBarA(QWidget *parent) :
  QWidget(parent)
{
  timer = new QTimer(this); //定時器
  timer->setInterval(50);
  connect(timer,QTimer::timeout,this,[=](){
    if(pointRect<=rectCount){
      pointRect++;
    }else{
      pointRect = pointRect%rectCount;
    }
    update();
  });
}

void LoadingBarA::paintEvent(QPaintEvent *event){ //重繪事件
  int width = this->width();
  int height = this->height();
  int side = qMin(width, height);

  QPainter painter(this);
  painter.setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing);
  painter.translate(width / 2, height / 2);
  painter.scale(side / 200.0, side / 200.0);

  float degree = 360.0/rectCount; //rectCount:共有多少根線條

  for(int i =0;i<rectCount;i++){
    painter.rotate(degree);
    if(i == pointRect - 1){
      drawRect(&painter,darkColor); //突出顏色
    }else{
      drawRect(&painter,lightColor);//非突出顏色
    }
  }
}

void LoadingBarA::drawRect(QPainter* painter,QColor color){//畫線條
  painter->save();
  painter->setPen(Qt::NoPen);
  painter->setBrush(color);
  QRect rect(arcLength,-rectHeight/2,rectWidth,rectHeight);
  painter->drawRoundedRect(rect,rectHeight/2,rectHeight/2);
  painter->restore();
}

void LoadingBarA::setDarkColor(QColor tempColor){
  this->darkColor = tempColor;
  update();
}

void LoadingBarA::setLightColor(QColor lightColor){
  this->lightColor = lightColor;
  update();
}

void LoadingBarA::setRectWidth(int l){
  this->rectWidth = l;
  update();
}

void LoadingBarA::setRectHeight(int l){
  this->rectHeight = l;
  update();
}

void LoadingBarA::setArcLength(int l){
  this->arcLength = l;
  update();
}

void LoadingBarA::setRectCount(int l){
  this->rectCount = l;
  update();
}

void LoadingBarA::startLoading(){ //設(shè)置開始
  timer->start();
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++深入講解函數(shù)重載

    C++深入講解函數(shù)重載

    C++ 允許多個函數(shù)擁有相同的名字,只要它們的參數(shù)列表不同就可以,這就是函數(shù)的重載(Function Overloading),借助重載,一個函數(shù)名可以有多種用途
    2022-07-07
  • 基于c++中的默認拷貝函數(shù)的使用詳解

    基于c++中的默認拷貝函數(shù)的使用詳解

    本篇文章對c++中默認拷貝函數(shù)的使用進行了詳細的分析介紹。需要的朋友參考下
    2013-05-05
  • C語言進度條的實現(xiàn)原理詳解

    C語言進度條的實現(xiàn)原理詳解

    這篇文章主要介紹了C語言進度條的實現(xiàn)原理,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 詳解散列表算法與其相關(guān)的C語言實現(xiàn)

    詳解散列表算法與其相關(guān)的C語言實現(xiàn)

    這篇文章主要介紹了詳解散列表算法與其相關(guān)的C語言實現(xiàn),平時經(jīng)常出現(xiàn)于各大考試競賽與程序員面試題目當(dāng)中,需要的朋友可以參考下
    2015-08-08
  • DEV?C++源碼編譯后控制臺輸出中文亂碼問題解決

    DEV?C++源碼編譯后控制臺輸出中文亂碼問題解決

    本文主要介紹了DEV?C++源碼編譯后控制臺輸出中文亂碼問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • c語言讀取csv文件和c++讀取csv文件示例分享

    c語言讀取csv文件和c++讀取csv文件示例分享

    這篇文章主要介紹了c語言讀取csv文件和c++讀取csv文件示例,需要的朋友可以參考下
    2014-03-03
  • C語言文件操作入門指南

    C語言文件操作入門指南

    我們在想既然是通訊錄就應(yīng)該把信息記錄下來,只有我們自己選擇刪除數(shù)據(jù)的時候,數(shù)據(jù)才不復(fù)存在,這就涉及到了數(shù)據(jù)持久化的問題,我們一般數(shù)據(jù)持久化的方法有,把數(shù)據(jù)存放在磁盤文件、存放到數(shù)據(jù)庫等方式,使用文件我們可以將數(shù)據(jù)直接存放在電腦的硬盤上,做到了數(shù)據(jù)的持久化
    2024-08-08
  • C語言static修飾函數(shù)詳細解析

    C語言static修飾函數(shù)詳細解析

    以下是對C語言中的static修飾函數(shù)進行了詳細的分析介紹,需要的朋友可以過來參考下
    2013-08-08
  • C++11基于范圍的for循環(huán)代碼示例

    C++11基于范圍的for循環(huán)代碼示例

    這篇文章主要給大家介紹了關(guān)于C++11基于范圍的for循環(huán)的相關(guān)資料,范圍for循環(huán)(也稱為C++11的基于范圍的for循環(huán))是一種簡化迭代容器(如數(shù)組、向量、列表等)元素的方式,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-06-06
  • C語言實現(xiàn)繪制立體餅圖的示例代碼

    C語言實現(xiàn)繪制立體餅圖的示例代碼

    這篇文章主要為大家詳細介紹了如何使用C語言實現(xiàn)繪制立體餅圖,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03

最新評論

江西省| 株洲市| 宁陵县| 富平县| 嵩明县| 古交市| 马鞍山市| 宁远县| 阿克陶县| 安庆市| 商河县| 桂林市| 十堰市| 蒙阴县| 天柱县| 若尔盖县| 固原市| 汾西县| 镇安县| 彩票| 石楼县| 容城县| 卢湾区| 喀喇| 温宿县| 黄冈市| 酉阳| 炎陵县| 景宁| 普宁市| 如东县| 盐池县| 寿宁县| 广平县| 南雄市| 灌南县| 开远市| 连江县| 白朗县| 新乐市| 马尔康县|