QSpinBox/QDoubleSpinBox/QSlider组合使用

简介: QSpinBox/QDoubleSpinBox/QSlider组合使用
#define RULER_RATIO 100.0f
const int nMin = 10;
  const int nMax = 3000;
  const double dSingleStep = 0.01;
  QDoubleSpinBox *zoomSpinBox = new QDoubleSpinBox(this);
  zoomSpinBox->setRange(nMin / RULER_RATIO, nMax / RULER_RATIO);
  zoomSpinBox->setSingleStep(dSingleStep); //步长
  zoomSpinBox->setDecimals(2); //两位小数
    QSlider *zoomSlider = new QSlider(this);
    zoomSlider->setRange(nMin, nMax); //刻度滑块大小的取值范围;与宏定义RULER_RATIO紧密相连
    zoomSlider->setValue(RULER_RATIO);
    zoomSlider->setFixedWidth(200);
    zoomSlider->setToolTip(tr("调整帧的宽度"));
    zoomSlider->setOrientation(Qt::Horizontal);
    zoomSlider->setFocusPolicy(Qt::TabFocus);
//信号槽相互改变
  //如果微调框是int型
  //connect(zoomSpinBox, SIGNAL(valueChanged(int)), zoomSlider, SLOT(setValue(int)));
  //connect(zoomSlider, SIGNAL(valueChanged(int)), zoomSpinBox, SLOT(setValue(int)));
  //如果微调框是double型
  connect(zoomSpinBox, static_cast<void(QDoubleSpinBox::*)(double)>(&QDoubleSpinBox::valueChanged), zoomSlider, [=](double v)
  {
    zoomSlider->setValue(v * RULER_RATIO);
  });
  connect(zoomSpinBox, static_cast<void(QDoubleSpinBox::*)(const QString &)>(&QDoubleSpinBox::valueChanged), zoomSlider, [=](const QString &text)
  {
    //double d = zoomSpinBox->valueFromText(text);
    //小数转QString,保留2位小数
    //QString str = QString::number(d, 'f', 2);
  });
  //滑块
    connect(zoomSlider, &QSlider::valueChanged, mTracks, &TimeLineCells::setFrameSize);
    connect(zoomSlider, &QSlider::valueChanged, this, [=](int v) {
    zoomSpinBox->setValue(v / RULER_RATIO);
    });
相关文章
|
8月前
|
算法 C++ UED
QML布局:如何恰当设置间隙与合理布局 (QML Layout: Proper Spacing and Alignment)
QML布局:如何恰当设置间隙与合理布局 (QML Layout: Proper Spacing and Alignment)
1216 0
|
8月前
QListWidget中添加QListWidgetItem的几种形式
QListWidget中添加QListWidgetItem的几种形式
116 0
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用
1005 0
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用
|
C# 图形学
Winform控件优化之Paint事件实现圆角组件(提取绘制圆角的扩展方法)
Paint事件方法中实现圆角控件不要通过事件参数`e.ClipRectangle`获取控件区域范围,原因见最后介绍;注意设置控件背景透明(参见[Winform控件优化之背景透明那些事2...
857 0
Winform控件优化之Paint事件实现圆角组件(提取绘制圆角的扩展方法)
|
Android开发
Android Paint 抗锯齿画线模糊
Android Paint 抗锯齿画线模糊
280 0
Android Paint 抗锯齿画线模糊
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(一)
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(一)
232 0
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(一)
|
Android开发
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(二)
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(二)
550 0
【约束布局】ConstraintLayout 13 种相对定位属性组合 ( 属性组合 | 用法说明 )(二)
|
IDE 开发工具 C++
QTextEdit实现自定义关键字着色(代码块着色)
QTextEdit实现自定义关键字着色(代码块着色)
526 0
QTextEdit实现自定义关键字着色(代码块着色)
纯源码实现Qt无边框窗口FramelessWidget:可移动+可改大小
纯源码实现Qt无边框窗口FramelessWidget:可移动+可改大小
277 0
|
异构计算
UIView 的 alpha,hidden,opaque 属性之间的关系影响 图层混用
前言 在看性能优化文章里, 看到不少提到要把相应控件设置成不透明,特别是在滚动页面上,但是没有看到深入说明为什么要这样去做, 如果控件是透明的将会带来什么影响,还有当中涉及到的知识点都没有提出来.
1287 0

热门文章

最新文章