как правильно сделать свой QLabel |
Здравствуйте, гость ( Вход | Регистрация )
как правильно сделать свой QLabel |
Litkevich Yuriy |
15.1.2008, 18:56
Сообщение
#1
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Туговато у меня с классами, вопрос скорее о С++, но все же.
Написал такую прогу, теста ради:
Копилится и работает, а когда пытаюсь проинициализировать YLabel текстом, вот так:
то выдается такая ошибка:
Как использовать в дочернем классе конструктор от родительского? Подскажите как сделать по сути клон, т.е. чтобы мой клас обладал всеми возможностями родительского. А то дальше и брыкатся со своими виджетами безсмыслено. |
|
|
balbes |
15.1.2008, 19:07
Сообщение
#2
|
Студент Группа: Участник Сообщений: 62 Регистрация: 11.10.2007 Пользователь №: 10 Спасибо сказали: 0 раз(а) Репутация: 0 |
В пустом класс есть только конструктор по умолчанию и конструктор копировщик.
При вызове: YLabel l2("YLabel-l2"); компилятор считает, что ты пытаешься таким образом обратиться к конструктору копировщику а привеления из строки к YLabel нет, вот и пишет ошибку. Тебе нужно переопределить конструктор: QLabel::QLabel ( const QString & text, QWidget * parent = 0, Qt::WindowFlags f = 0 ) в твоем классе и все |
|
|
Litkevich Yuriy |
15.1.2008, 19:16
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
А как это сделать?
я пытался так:
Это совсем мимо? напишите пожалуйста, объявление и реализацию, а то у меня ниодной книжки по С++ нету |
|
|
ViGOur |
15.1.2008, 19:21
Сообщение
#4
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Почти, нужно так:
|
|
|
balbes |
15.1.2008, 19:23
Сообщение
#5
|
Студент Группа: Участник Сообщений: 62 Регистрация: 11.10.2007 Пользователь №: 10 Спасибо сказали: 0 раз(а) Репутация: 0 |
Книжки можно качнуть тут: http://privatelib.narod.ru
|
|
|
Litkevich Yuriy |
15.1.2008, 19:40
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
За книжки спасибо, я уже заказал на Ozon.ru Герберт Шилдт "Полный справочник по C++" должна в конце недели прийти.
Надеюсь она мне поможет. ViGOur я так делал тогда ругается так:
причем уже в самом первом варианте, т.е.
я этого совсем не понимаю без конструктора, использует метод родителя без проблем, щаззз заплачу, или пойду натрескаюсь пива :angry: |
|
|
ViGOur |
15.1.2008, 19:47
Сообщение
#7
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
А в это случае так как ты переопределил конструктор, ты перекрыл конструктор по умолчанию, о чем тебе и говорит компилятор.
Так будет работать:
|
|
|
Litkevich Yuriy |
15.1.2008, 19:58
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Щас точно пойду нажрусь, в обед делал оба конструктора, не покатило, блин жаль, что перетер, щас бы сравнил.
Спасибо, работает. Видать думал таки в правильном направлении, но где то чушь на порол. |
|
|
ViGOur |
15.1.2008, 20:13
Сообщение
#9
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
|
|
|
Litkevich Yuriy |
15.1.2008, 21:35
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
ViGOur
Жду книжку, наверное только в пятницу прийдет. Герберт Шилдт "Полный справочник по C++" Как считаешь Хорошая? Страуструпа не хочу, меня от него в сон клонет либомозги начинают булькать . читал английскую версию Вики книги русская в этом именно месте(объектно-ориентированное програмирование) еще не написана Сообщение отредактировал Litkevich Yuriy - 15.1.2008, 21:37 |
|
|
Текстовая версия | Сейчас: 27.12.2024, 13:28 |