Добрый день, товарищи! Хочу соединить DoubleSpinBox и Horizontal Slider. На

фото соединил SpinBox и Horizontal Slider, для DoubleSpinBox почему-то нет слота SetValue, кто-нибудь сталкивался с подобным?

3 ответов

10 просмотров

наверное из за того что параметр типа int. у QDoubleSpinBox там double https://doc.qt.io/qt-5/qdoublespinbox.html

BV-Багров Автор вопроса

Друзья, задавал этот вопрос уже, и якобы нашёл на него ответ на StackOverFlow, но задача такая отпала со стороны руководителя, а сейчас вновь появилась, и не удаётся сделать, может кто-то всё-таки сталкивался с этим? Задача, на мой взгляд, достаточно общая, чтобы прям никто не знал ответ..

BV-Багров Автор вопроса

Друзья, подскажите, пожалуйста, взял код со StackOverFlow, все понятно, за исключением класса Test. Насколько я понимаю, здесь создаётся слайдер как объект класса DoubleSlider, как мне поступить, если у меня уже создана готовая форма widget.ui и на неё помещён мой слайдер класса, естественно, QSlider ? #include <QApplication> #include <QtGui> #include <QVBoxLayout> #include <QSlider> #include <QLabel> class DoubleSlider : public QSlider { Q_OBJECT public: DoubleSlider(QWidget *parent = 0) : QSlider(parent) { connect(this, SIGNAL(valueChanged(int)), this, SLOT(notifyValueChanged(int))); } signals: void doubleValueChanged(double value); public slots: void notifyValueChanged(int value) { double doubleValue = value / 10.0; emit doubleValueChanged(doubleValue); } }; class Test : public QWidget { Q_OBJECT public: Test(QWidget *parent = 0) : QWidget(parent), m_slider(new DoubleSlider()), m_label(new QLabel()) { m_slider->setOrientation(Qt::Horizontal); m_slider->setRange(0, 100); QVBoxLayout *layout = new QVBoxLayout(this); layout->addWidget(m_slider); layout->addWidget(m_label); connect(m_slider, SIGNAL(doubleValueChanged(double)), this, SLOT(updateLabelValue(double))); updateLabelValue(m_slider->value()); } public slots: void updateLabelValue(double value) { m_label->setText(QString::number(value, 'f', 2)); } private: QSlider *m_slider; QLabel *m_label; }; int main(int argc, char *argv[]) { QApplication a(argc, argv); Test *wid = new Test(); wid->show(); return a.exec(); }

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта