6 / 6 / 8
Регистрация: 18.09.2014
Сообщений: 124

При наследовании класса QSlider происходит ошибка

09.06.2015, 02:21. Показов 2179. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Вопрос уже мучает второй день. Погуглил. Все предложеные варианты не сработали. Обращаюсь к вам.
Дело такое. Мне нужно что бы при отпускании кнопки мыши на ползунке переменная запоминала значение value у ползунка.
Как я понял, что бы это было возможно, нужно создать класс, уноследованный от QSlider.
C++
1
2
3
4
5
6
7
8
9
class SliderMem : public QSlider
{
public:
    SliderMem(QWidget * parent = 0);
protected:
    virtual void mouseMoveEvent(QMouseEvent * ev);
    virtual void mousePressEvent(QMouseEvent * ev);
    virtual void mouseReleaseEvent(QMouseEvent * ev);
};
Ошибка возникает в данном коде:
C++
1
2
3
4
SliderMem::SliderMem(QWidget * parent) : QSlider(parent)
{
 
}
Текст ошибки:
Кликните здесь для просмотра всего текста
/home/mrjone/qt_pro/easymakepc/easymakepc/wMain.cpp:57: error: undefined reference to `vtable for SliderMem'

Объясните в чём ошибка? Или лучше скажите как выполнить мою задачу.
Буду очень благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.06.2015, 02:21
Ответы с готовыми решениями:

Ошибка при наследовании от класса Qtimer
В общем, вот у меня есть код: #include <QCoreApplication> #include <windows.h> #include <QDebug> #include <QTimer> class...

Ошибка при обращении из одного класса к методу другого класса
Структура проекта, 2 класса: класс графики MainWindow класс логики Сannibals при обращении из mainwindow к методу из cannibals...

QSlider и отображение текущего значения при его перемещении
Есть QSlider. Хочу чтобы когда я его перемещаю, возле него отображалось его текущее значение. Без переопределения класса QSlider не...

24
6 / 6 / 8
Регистрация: 18.09.2014
Сообщений: 124
10.06.2015, 13:57  [ТС]
Студворк — интернет-сервис помощи студентам
Я сделал всё как вы предложили. Но теперь он потребовал у меня конструктор и диструктор класса. Я их сделал:
C++ (Qt)
1
2
    MainWindow(){}
    ~MainWindow(){}
Но он теперь ругаеться вот так:
Кликните здесь для просмотра всего текста
/home/mrjone/qt_pro/easymakepc/easymakepc/wMain.h:13: error: undefined reference to `vtable for MainWindow'
/home/mrjone/qt_pro/easymakepc/easymakepc/wMain.h:14: error: undefined reference to `vtable for MainWindow'

Чёт тут не так...
0
161 / 126 / 30
Регистрация: 30.05.2015
Сообщений: 380
10.06.2015, 14:02
давай снова полностью код.
1
6 / 6 / 8
Регистрация: 18.09.2014
Сообщений: 124
10.06.2015, 14:19  [ТС]
easymakepc.zip
0
161 / 126 / 30
Регистрация: 30.05.2015
Сообщений: 380
10.06.2015, 14:31
Лучший ответ Сообщение было отмечено MrJone как решение

Решение

У меня собирается.

Но как минимум две ошибки у тебя есть: под points выделяется массив в 2 элемента, а используется 3 элемента, должно быть
C++ (Qt)
1
2
    QPoint pointsCM[6],
     points[2];
И connect к переменной memory осуществляется до ее создания.
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
        memory = new QSlider(Qt::Horizontal,&wMain);
        memory->setRange(1,16);
        memory->setPageStep(1);
        memory->setValue(4);
        memory->setTickInterval(1);
        memory->setTickPosition(QSlider::NoTicks);
        memory->move(points[0]);
        memory->setFixedWidth(130);
        memoryRAM = memory->value();
        connect(memory, SIGNAL(valueChanged(int)),
                        this, SLOT(onValueCh(int)));
А так работает. Так что попробуй запустить qmake и затем полный ребилд проекта.
1
6 / 6 / 8
Регистрация: 18.09.2014
Сообщений: 124
10.06.2015, 14:41  [ТС]
Чёртов Qt))
Цитата Сообщение от Kurles Посмотреть сообщение
А так работает. Так что попробуй запустить qmake и затем полный ребилд проекта.
Братан. Всю жизнь буду помнить как ты мне помогал)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.06.2015, 14:41

Ошибка при наследовании класса
Среда Visual Basic STUDIO’2010 Professional Наследование. Как устранить ошибку. Сделано согласно примеру MSDN'2008 Public Class...

Ошибка при наследовании класса
Всем доброго времени суток, пытаюсь отнаследовать класс, вот такой код я смастерил: #ifndef CLASS_H_ #define CLASS_H_ class stack ...

Ошибка: undefined reference to при наследовании класса
Здравствуйте форумчане. Пытаюсь наследовать класс MyService от OAuthService и получаю множество ошибок: Ошибка: undefined reference to...

Ошибка Web.config при наследовании класса MembershipProvider
Ситуация следующая. Унаследовал я класс MembershipProvider. Переопределил функции. Теперь есть свой класс под названием PowPlayProvider....

Что происходит с ABI при наследовании?
Привет. В общем столкнулся в проекте со странной проблемой, похожей на проблему с ABI. Вот в чем суть. Есть ServiceLocator, суть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Опции темы

Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru