| 
					 Название: Как создать свой собственный combobox ? Отправлено: virtual_root от Августа 13, 2012, 21:04 Добрый вечер снова! Ребята, подскажите как реализовать мою идею) 
					Мне нужно создать свой компонент выпадающего списка. Только это должен быть список маркеров для текстового редактора. Как в word есть нумерованный список, а есть маркированный, мы нажимаем на маленький треугольник справа и выпадает список вариантов маркеров для списка. Я пыталась наследоваться от компонента QCombobox. Ну не могу ничего изменить в наследнике всё время выпадает ошибка: Код: undefined reference to 'vable for PictureCmboBox' Вот мой код, и он не компилируется... не понятно почему... Код Смотрела в сторону реализации с помощью делегата, ну что-то не пойму как с помощью него такое сделать... Подскажите, может кому уже приходилось такое реализовывать? Название: Re: Как создать свой собственный combobox ? Отправлено: kambala от Августа 13, 2012, 21:17 может из-за неправильной сигнатуры конструктора? попробуй PictComboBox(QWidget* parent = 0). 
					да, а #include <QComboBox> написано? :) Название: Re: Как создать свой собственный combobox ? Отправлено: virtual_root от Августа 13, 2012, 21:34 это наверное был баг Qt... я ещё раз пересоздала класс и всё собралось. Спасибо большое. А дальше как мне список такой воплотить в реальность не подскажите? 
					Название: Re: Как создать свой собственный combobox ? Отправлено: Bepec от Августа 14, 2012, 06:56 Я тебе советую сделать простой виджет - layout с масенькими кнопачками внутри. Выйдет быстрее и проще % на 80. 
					Ну или сделать свой собственный model-view, с блекджеком и ш... и бабками :D Название: Re: Как создать свой собственный combobox ? Отправлено: virtual_root от Августа 14, 2012, 09:52 Я так и решила Верес, просто сделать кнопочками. Вот как я придумала: 
					возьму 2 кнопки QPushButton, одну из них сделаю квадратной формы и наложу на неё картинку списка, вторую прилеплю рядом и наложу на неё картинку маленького треугольника раскрывающего списка. Чтобы получилось как на прикрепленной картинке. По щелчке по квадратной кнопке будут раскрывать виджет который расположу под ними и который напихаю картинки маркеров)) вот так придумала) Название: Re: Как создать свой собственный combobox ? Отправлено: Bepec от Августа 14, 2012, 10:20 В принципе в моём стиле сделано - максимально просто. А можно было бы посложнее - сделать свою кнопочку с отрисовочкой и реакцией на нажатие :)  
					PS минимум затрат - максимум результата. Угумс. Название: Re: Как создать свой собственный combobox ? Отправлено: Странник от Августа 14, 2012, 11:39 я сейчас страшную вещь спрошу. обычный QComboBox чем не устроил? вам же по сути нужен QComboBox, содержащий картинки, или я чего-то в этой жизни не понял? 
					Код: comboBox->addItem(QIcon(":/icons/mark1.png"), QString());Название: Re: Как создать свой собственный combobox ? Отправлено: Bepec от Августа 14, 2012, 11:57 Странник, а разве combobox поддерживает расположение итемов в сетке ?  
					Аля gridView? Название: Re: Как создать свой собственный combobox ? Отправлено: virtual_root от Августа 14, 2012, 12:04 Картинки запихивать то можно в QCombobox, но мне же нужен внешний вид компонента как на картинке, что я выше привела. 
					Название: Re: Как создать свой собственный combobox ? Отправлено: Странник от Августа 14, 2012, 12:22 Странник, а разве combobox поддерживает расположение итемов в сетке ?  QListView поддерживает. и стоит в качестве view по умлочанию.Аля gridView? Код: QListView *view = qobject_cast<QListView *>(comboBox->view()); Картинки запихивать то можно в QCombobox, но мне же нужен внешний вид компонента как на картинке, что я выше привела. стили?Название: Re: Как создать свой собственный combobox ? Отправлено: Bepec от Августа 14, 2012, 12:41 Об вот этом я и незнал. Что в comboBox listView. Тогда да - просто использовать приведённый код и вуаля. 
					Название: Re: Как создать свой собственный combobox ? Отправлено: andrew.k от Августа 14, 2012, 14:30 Пока читал тред пару раз в обморок грохнулся) 
					Об вот этом я и незнал. Что в comboBox listView. Тогда да - просто использовать приведённый код и вуаля. стыдно, батенька!Название: Re: Как создать свой собственный combobox ? Отправлено: Bepec от Августа 14, 2012, 14:53 Стыдно ногой пнуть беспомощного и беззащитного. 
					Мне не стыдно чего-то незнать :) Мне стыдно чему то не научиться :D PS атятя :D  |