查看完整版本: [-- Qt编写三色圆环仪表盘 --]

QTCN开发网 -> Qt 作品展 -> Qt编写三色圆环仪表盘 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

liudianwu 2016-10-16 14:41

Qt编写三色圆环仪表盘

/**
* 本控件来源于网络(原作者:lx100991(http://www.qtcn.org/bbs/read-htm-tid-62042.html ))
* 1:增加设置背景色/第一第二第三颜色
* 2:增加设置文字字体及文字和刻度颜色
* 3:增加设置中间圆点颜色
* 4:修正当范围值中最小值为负数时的bug
* 5:修正刻度值在三分之一阶段时切换不准确的bug
* 6:增加一些完整性校验
*/
效果图
[attachment=15890]

源码:[attachment=15891][attachment=15892]
使用方法:
  1. #include "frmdialplot.h"
    #include "ui_frmdialplot.h"

    frmDialPlot::frmDialPlot(QWidget *parent) :
        QWidget(parent),
        ui(new Ui::frmDialPlot)
    {
        ui->setupUi(this);
        this->initForm();
    }

    frmDialPlot::~frmDialPlot()
    {
        delete ui;
    }

    void frmDialPlot::initForm()
    {
        int minValue = 0;
        int maxValue = 100;
        int value = minValue;

        ui->widget1->setUnit("km/h");
        ui->widget1->setRange(minValue, maxValue);
        ui->widget1->setValue(value);
        ui->horizontalSlider1->setRange(minValue, maxValue);
        ui->horizontalSlider1->setValue(value);
        connect(ui->horizontalSlider1, SIGNAL(valueChanged(int)), ui->widget1, SLOT(setValue(int)));

        minValue = -50;
        maxValue = 150;
        value = minValue;

        ui->widget2->setTextColor(QColor(0, 0, 0));
        ui->widget2->setBgColor(QColor(255, 255, 255));
        ui->widget2->setFirstColor(QColor(112, 112, 112));
        ui->widget2->setSecondColor(QColor(102, 205, 0));
        ui->widget2->setThirdColor(QColor(135, 205, 254));
        ui->widget2->setCenterColor(QColor(51, 51, 51));

        ui->widget2->setUnit("℃");
        ui->widget2->setRange(minValue, maxValue);
        ui->widget2->setValue(value);
        ui->horizontalSlider2->setRange(minValue, maxValue);
        ui->horizontalSlider2->setValue(value);
        connect(ui->horizontalSlider2, SIGNAL(valueChanged(int)), ui->widget2, SLOT(setValue(int)));
    }



nigoole 2016-10-16 21:45
没有人围观吗!?

仗剑天涯 2016-10-17 11:03
前来围观

disongshu 2016-10-17 13:17
  高手高手

lx100991 2016-10-17 15:38
改的真不错,CSDN一直没分,临时写个小程序得分下东西

ch781609892 2016-10-19 15:48

mu_de_yu 2016-10-20 15:37
赞赞赞---100个赞

ap0704203 2016-10-21 19:23
大神威武 ····

ktl123 2016-10-22 18:09
3D 效果不错

zhenonline 2016-10-25 14:52
厉害,赞一个

alcohol 2016-11-02 16:10
很赞,

pll1023 2016-11-24 10:08
   厉害厉害

zhao_zzy 2016-12-01 11:42
谢谢 ,非常感谢,

zwk0704 2017-04-12 00:26
借用了

taoge123456 2017-09-20 16:05

w642833823 2017-09-20 21:26
     前辈厉害!!!!!!!!!!!!!!!!!!

shepher 2017-09-27 11:40
很好看,自己实现了下,真心不错


查看完整版本: [-- Qt编写三色圆环仪表盘 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled