Russian Qt Forum
Ноябрь 01, 2024, 22:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: кнопка в виде заданного изображения  (Прочитано 5180 раз)
toshcka
Гость
« : Январь 06, 2010, 19:39 »

интересует сабж
есть некоторое изображение, как сделать, чтобы кнопка представляла из себя именно это изображение?
какой класс использовать?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Январь 06, 2010, 20:41 »

Установи кнопке изображение
Записан

Юра.
toshcka
Гость
« Ответ #2 : Январь 06, 2010, 20:55 »

Установи кнопке изображение
может я чего-то не понимаю
вы имеете ввиду setIcon() классов QPushButton и QToolButton?
но это просто установит иконку на кнопку, мне не это надо
мне нужна кнопка, которая выглядит именно так, как изображение
пока единственное, что придумал, вывести изображение и обработать события нажатия кнопкой мыши
« Последнее редактирование: Январь 06, 2010, 21:46 от toshcka » Записан
igor_bogomolov
Гость
« Ответ #3 : Январь 07, 2010, 00:00 »

Можно сделать примерно так:
Код
C++ (Qt)
class MyButton : public QPushButton
{
   Q_OBJECT
public:
   MyButton(QWidget * parent = 0) : QPushButton(parent) {
       pixmap.load(QLatin1String("../../qtcreator_logo_256.png"));
       setFixedSize(pixmap.size());
       setMask(pixmap.mask());
   }
protected:
   void paintEvent(QPaintEvent * event) {
       QPainter painter(this);
       painter.drawPixmap(rect(), pixmap);
   }
private:
   QPixmap pixmap;
};
Записан
SABROG
Гость
« Ответ #4 : Январь 07, 2010, 01:23 »

Или унаследоваться даже от QAbstractButton. Я для своих целей обычно использую QToolButton с включенным flat и в качестве иконки ставлю пиксмап, пока пользователь мышку на картинку не наведет границы кнопки не видны.

Кстати многие забывают об интересной возможности поставить в качестве кисти (QBrush) в palette() QPixmap.
« Последнее редактирование: Январь 08, 2010, 01:16 от SABROG » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.108 секунд. Запросов: 23.