Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: n2o от Апрель 07, 2011, 12:05



Название: Убрать иконку в поле ввода QComboBox
Отправлено: n2o от Апрель 07, 2011, 12:05
У меня есть в Item'ах иконки перед текстом, но эти иконки отображаются в поле ввода. Как сделать чтоб в поле ввода их не видно было?


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: Пантер от Апрель 07, 2011, 12:09
Каких Item'ах? Какие иконки? Какое поле ввода?


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: n2o от Апрель 07, 2011, 13:35
в заголовке же написал, QComboBox
поле ввода это LineEdit  в QComboBox.

Код:
QIcon icon;
icon.addFile(QString::fromUtf8(":/color/black.png"), QSize(), QIcon::Normal, QIcon::Off);
addItem(icon, QString());

и ещё вопрос: как получить доступ к LineEdit в QComboBox?
мне нужно удалить, либо просто скрыть LineEdit, чтоб осталась одна кнопка.


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: Пантер от Апрель 07, 2011, 13:46
Какие странные у тебя желания. :)
QLineEdit * QComboBox::lineEdit () const
void QComboBox::setLineEdit ( QLineEdit * edit )


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: n2o от Апрель 07, 2011, 14:31
написал так в классе унаследованном от QComboBox:
Код:
QLineEdit *line=new QLineEdit(this);
line->setVisible(false);
setLineEdit(line);
но в программе без изменений, как был LineEdit так и остался.

Появился ещё вопрос: как получить доступ к выпадающему списку? нужно изменить размер его и ещё кой какие параметры.


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: Пантер от Апрель 07, 2011, 14:36
Я так чувствую, что тебе проще отнаследоваться от QComboBox.


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: n2o от Апрель 07, 2011, 14:56
Имеешь ввиду написать свой комбобокс?


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: Пантер от Апрель 07, 2011, 15:02
class MyComboBox : public QComboBox {
тут делаешь что хочешь
}


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: n2o от Апрель 07, 2011, 18:27
class MyComboBox : public QComboBox {
тут делаешь что хочешь
}
я так и делаю.
я же написал.
не работает.

А как на счёт выпадающего списка?


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: GreatSnake от Апрель 08, 2011, 08:44
Цитата: n2o
Появился ещё вопрос: как получить доступ к выпадающему списку? нужно изменить размер его и ещё кой какие параметры.
QAbstractItemView *   view () const;
virtual void showPopup();


Название: Re: Убрать иконку в поле вводы QComboBox
Отправлено: n2o от Апрель 08, 2011, 09:27
Спасибо всем.