Название: Прозрачный фон у QTableView Отправлено: mutineer от Май 25, 2011, 17:58 Доброго времени суток
Как сделать прозрачный фон у QTableView? UPD: Решил. Оказалось что GTK-style не поддерживает прозрачный фон для ячеек View. Поменял у View стиль на Motif и все заработало Название: Re: Прозрачный фон у QTableView Отправлено: kambala от Май 25, 2011, 18:13 QWidget::setWindowOpacity() ?
Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 11:49 Нет, у айтемов все равно белый фон остается
Название: Re: Прозрачный фон у QTableView Отправлено: alexman от Май 26, 2011, 12:07 Попробуйте viewport-у установить ???
Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 12:08 Доброго времени суток Как сделать прозрачный фон у QTableView? Вот пример как разместить картинку в QTableView и чтобы ее было видно через альтернативную расцветку строк. Закоментированн пример установки прозрачности и для основного цвета. qss Код: .QTableView Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 13:09 Фон устанавливается, полупрозрачный цвет поверх него есть, но все это видно только в той части QTableView, где нет ячеек. Цвет ячеек остается белым((
Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 13:12 Фон устанавливается, полупрозрачный цвет поверх него есть, но все это видно только в той части QTableView, где нет ячеек. Цвет ячеек остается белым(( Белым и непрозрачным? Скришот и код в студию! Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 13:37 Код
Вот что получается при таком стиле: Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 13:43 Код
Вот что получается при таком стиле: background-color: rgba(0, 0, 100, 15%); alternate-background-color: rgba(100, 0, 0, 15%); Не совсем представляю что такое для прозрачности 150. Вероятно нужно, таки, поставить % Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 13:48 Не совсем представляю что такое для прозрачности 150. Вероятно нужно, таки, поставить % Для прозрачности 150 то же самое, что и для компонентов цвета - она тож может задаваться числом из диапазона 0-255. Кстати, background-color находится под изображением, а не над ним Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 13:54 Для прозрачности 150 то же самое, что и для компонентов цвета - она тож может задаваться числом из диапазона 0-255. Да, в документации нашел, но при этом в qss такое указание прозначности не работает. Только что проверил на своем проекте - Qt: 4.7.0. Такое же поведение было на Qt: 4.6.xНазвание: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 13:57 В qss не знаю, но через setStyleSheet работает
Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 14:34 В qss не знаю, но через setStyleSheet работает Так работает прозрачность или нет? Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 14:39 В qss не знаю, но через setStyleSheet работает Так работает прозрачность или нет? Работает ее задание в виде 0-255 вместо процентов, но задача не решена Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 15:17 Работает ее задание в виде 0-255 вместо процентов, но задача не решена Тогда полный код в студию. Там где QTableView.setStyleSheet(QString styleStr) Нужен не кусок, а вся строка "styleStr" И еще вопрос, тип объекта к которому применяется setStyleSheet - QTableView или что-то отнаследованное от QTableView? Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 15:27 Это и была вся строка стиля.
Что-то унаследованное Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 15:51 Непонятно Ваше нежелание показать весь кусок кода, облегчило бы понимание ситуации...
В конструкторе основной формы Код
или Код
дает результат которой на скриншотах... Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 16:08 Хорошо, вот кусок кода, где устанавливается стиль:
Код
текст стиля я уже приводил, результат тоже Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 16:32 Хорошо, вот кусок кода, где устанавливается стиль: Код
текст стиля я уже приводил, результат тоже Подозреваю, что config это QSettings тогда стоит попытаться сделать, т.к. value() возвращает QVariant Код
Ну и раз стиль хранится в настройках, почему бы его не вынести в отдельный файл где хранить стили на все приложение для каждого конкретного класса, объекта и т.д.? Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 16:47 Нет, это QHash<QString, QString>
Стиль читается из файла Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 16:55 Не вопрос...
Покажите вывод Код
Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 17:03 style = background-image: url(/music/button_stop.png); background-color: rgba(0, 0, 100, 10%); alternate-background-color:rgba(100, 0, 0, 10%);
Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 17:09 style = background-image: url(/music/button_stop.png); background-color: rgba(0, 0, 100, 10%); alternate-background-color:rgba(100, 0, 0, 10%); Мистика какая-то... Нужен Firebug :-)а еще какие-нить стили в приложении используются? подозреваю, что что-то перекрывает определение стиля... Название: Re: Прозрачный фон у QTableView Отправлено: mutineer от Май 26, 2011, 17:42 Используется довольно много стилей, но на родителях виджета вроде ничего нет. Смущает, что у самой таблицы фон нормально меняется, а у ячеек белая подложка под фоном
Название: Re: Прозрачный фон у QTableView Отправлено: Termit от Май 26, 2011, 23:58 Так чего бы эти стила не вынести в одтельный файл, может там будет яснее?
Если есть стиль который применяется к QApplication он запросто может наследоваться. |