LINUX.ORG.RU

Это кошерно - задавать вопросы с витиеватой формулировкой и доморощенным слэнгом, которые фиг поймешь? Что тебе конкретно надо сделать, вместо "накинуть произвольную картинку"?

Можешь добавить иконку - setIcon, а поменять внешний вид - таки да, через стили.

Spectr ★★★
()
Ответ на: комментарий от one_more_hokum

Навряд ли setMask: The QBitmap class provides monochrome (1-bit depth) pixmaps. - т.е. через setMask установишь маску для отрисовки и обработки пикселей виджета (пиксели с маской "1" будут рисоватся и реагировать на мышь).

Похоже, что из тех методов что есть у QPushButton, либо переопределить метод render (слишком низкоуровнево), либо же через стили.

Spectr ★★★
()

Наследуй QPushButton и переопределяй paintEvent, в котором выводи свой рисунок, а поверх него рамку кнопки с помощью QStylePainter'a

mannaz
()
Ответ на: комментарий от Kristi

У QPushButton нет метода setPixmap. Он есть у QLabel.

Я через QStylePainter картинку отрисовал. Правда теперь кнопка не похожа на кнопку -- визуально не "нажимается". :-)

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от one_more_hokum

А можно вопрос? Есть главное окно, на ней кнопка, пару полей ввода и ТайблВиджет (ог занимет процентов 80 окна), как сделать чтобы когда изменяется размер окна, чтобы происходило пропорциональное изменени ТейблВиджет (кнопки и поля ввода оставались преждними)?

hello_world
()
Ответ на: комментарий от hello_world

Если тебе нужно, чтобы кнопки и поля ввода не "расползались" относительно друг друга -- используй QGridLayout вместе с QSpacerItem-ами.

Чтобы разобраться, как они (QSpacerItem-ы) функционируют -- поиграйся с ними в Designer-е, так нагляднее будет. После того-же BorlandBuilder-а они несколько непривычны, но это пройдёт.

А если нет -- то тупо задать полям ввода и кнопкам фиксированный размер, больше которого они увеличиваться не будут (setMaximumSize()).

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от one_more_hokum

>А если нет -- то тупо задать полям ввода и кнопкам фиксированный размер, больше которого они увеличиваться не будут (setMaximumSize()).

А если кто то решит уменьшить размер формы? То пол таблицы станет невидимой. Вопрос то в том, я то то не понял, у меня вообще на при изменении формы кнопки и все элементы не подвижны

hello_world
()
Ответ на: комментарий от hello_world

А в чём проблема-то? Задай самой форме минимальный размер (setMinimumSize())/ :-)

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от one_more_hokum

добавил грид лайот, на него положил кнопку, выбираю превью( начинаю изменять размеры формы) -- кнопка не меняет размер

hello_world
()
Ответ на: комментарий от hello_world

Ага, это я сбрехал, каюсь. :-) Кнопку кидай на форму, убери с неё фокус (щёлкни на форме где-нить), потом Меню->Form->Lay Out in a Grid. Запускай preview. Profit?

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от one_more_hokum

ДАААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААА АААААААААААААААААААА!!!!!!!!!!!!!!!!!!!!!!!!!!!!! наконецто, парился (переодически) с эти уже 3 недели!

hello_world
()
Ответ на: комментарий от hello_world

А вот интересна, что делает команда Меню->Form->Lay Out in a Grid, она добавляет Лайот? А почему его на дезайнере (как другие) не видна?

hello_world
()
Ответ на: комментарий от hello_world

Ну и хорошо. :-) Читай документацию -- там многое (если не всё) описано!

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от hello_world

Уж начинал подумывать о переопределении виртуальных методов типа сайз хинт, и привязка их к сигналам, и ручной расчет геометрии, но так прощщще!

hello_world
()
Ответ на: комментарий от hello_world

> что делает команда...

Да я хрен его знает... В .ui файле посмотри, что там нагенерировал Designer. А мне лениво, я лучше руками сам всё распишу. :-)

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от indie

> button->setStyleSheet

Вот странно, всякие background-color и прочие border-radius применяются, а image -- не желает. В чём может быть причина?

one_more_hokum ★★★
() автор топика
Ответ на: комментарий от indie

Ага, вот эти доки! Эй, я делаю особую, OpenSource-ную магию!

Важность грамотного посыла в man подтверждается раз за разом!

one_more_hokum ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.