Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [Qt]Создание отдельного окна


Автор: toxx 9.5.2010, 18:58
У меня есть доска, которая рисуется с помощью QPainter'a. Хочу эту доску добавить в отдельное окно, и создать отдельные окошки с текстовыми пояснениями игры.
С помощью чего можно сделать вот такую http://www.valar.ru/gallery/0410/tt1.jpg?
Желательно пример... потому что, я смотрел в Demos&Examples там есть пример http://www.valar.ru/gallery/0510/o01.jpg и там это всё очень сложно сделано, хочу найти попроще путь решения...

Qt 4.6.2

Автор: djamshud 9.5.2010, 19:05
QLayout. Проще набросать в дизайнере: вместо виджета с доской нужно поставить QWidget и сделать из его контекстного меню "Promote to" класса-виджета с вашей доской.

//А рисовать шахматы или шашки гораздо проще и правильнее в QGraphicsScene. Тут и promote не нужен будет.

Автор: toxx 9.5.2010, 19:14
Цитата

QLayout. Проще набросать в дизайнере: вместо виджета с доской нужно поставить QWidget и сделать из его контекстного меню "Promote to" класса-виджета с вашей доской.

Щас займусь...надеюсь просто будет
Цитата

//А рисовать шахматы или шашки гораздо проще и правильнее в QGraphicsScene. Тут и promote не нужен будет. 

Я как бы уже нарисовал...всё сделал с помощью QPaint... у меня уже есть всё, что нужно для игры это АИ доска и всё это... осталось только приятный интерфейс сделать...

Автор: toxx 9.5.2010, 20:57
djamshud
всё сделал, спасибо =) только сделал доками... 

вот что http://www.valar.ru/gallery/0510/board.jpg.

Автор: KL7 9.5.2010, 21:32
Добавьте к своему QPainter-у сглаживание:
Код

    painter.setRenderHint(QPainter::Antialiasing);

а то у Вас границы кружочков не нарядные  smile 

Автор: toxx 9.5.2010, 21:36
KL7
Ухтыыы, классно =) Спасибо, красивенько =)

вот как http://www.valar.ru/gallery/0510/tt.jpg

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)