Рисование

Модератор: Модераторы разделов

Micra
Сообщения: 9

Рисование

Сообщение Micra »

Как нарисовать что-нибудь на форме? Я использую среду KDevelop. Я так понимаю что мне нужен объект типа QCanvasView, как мне до него добраться, у формы же должна быть своя канва.
Спасибо сказали:
Аватара пользователя
k01
Сообщения: 104
ОС: Archlinux

Re: Рисование

Сообщение k01 »

QcanvasView - это отдельный виджет, и в состав формы не входит )
Если рисунок не очень сложный, то можно создать подкласс QWidget и переопределить в нём ф-ю void paintEvent(QPaintEvent*), например так :
void MyWidget::paintEvent(QPaintEvent*){
QPainter painter(this);
painter.drawText(50,50,"Hello World");
}
Рациональное программирование — наш ответ MicroSoft!
Спасибо сказали:
Micra
Сообщения: 9

Re: Рисование

Сообщение Micra »

А получтся с помощью QPainter сделать подвижное изображение, не перерисовывая всю форму?
Спасибо сказали:
Аватара пользователя
k01
Сообщения: 104
ОС: Archlinux

Re: Рисование

Сообщение k01 »

В принципе да. Хотя в этом случае может оказаться, что проще использовать QCanvas + QCanvasView как вы и хотели в начале...
http://www.linuxcenter.ru/lib/books/qt3/qt....phtml#CHAPTER8
Рациональное программирование — наш ответ MicroSoft!
Спасибо сказали:
Micra
Сообщения: 9

Re: Рисование

Сообщение Micra »

А можно как-то разместить QСanvasView на форме?
Спасибо сказали:
Аватара пользователя
k01
Сообщения: 104
ОС: Archlinux

Re: Рисование

Сообщение k01 »

Да , как и любой другой виджет. Просто при создании QCanvasView укажите форму в качестве "родителя"
Рациональное программирование — наш ответ MicroSoft!
Спасибо сказали:
Micra
Сообщения: 9

Re: Рисование

Сообщение Micra »

Спасибо
Спасибо сказали:
Micra
Сообщения: 9

Re: Рисование

Сообщение Micra »

А можно ли сделать фон QCanvas прозрачным?
Спасибо сказали:
Аватара пользователя
k01
Сообщения: 104
ОС: Archlinux

Re: Рисование

Сообщение k01 »

нет , Qt3.x не поддерживает прзрачность для виджетов
Рациональное программирование — наш ответ MicroSoft!
Спасибо сказали: