Рисование во вкладках, В каждой вкладке - свой рисунок. Как сделать? |
Здравствуйте, гость ( Вход | Регистрация )
Рисование во вкладках, В каждой вкладке - свой рисунок. Как сделать? |
Алексей1153 |
2.8.2010, 11:13
Сообщение
#11
|
фрилансер Группа: Участник Сообщений: 2939 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Странно, вот если написать QPainter painter(this);, то он все прекрасно рисует... Но только непосредственно в главном окне(( А ничего странного. Ты про ООП слышал когда-нибудь ? КАЖДОЕ окно само себя должно рисовать. А ты пытался сделать из одного. Каждая вкладка рисует сама себя. Каждый виджет на каждой вкладке - аналогично |
|
|
QMainWindow |
2.8.2010, 11:17
Сообщение
#12
|
Участник Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0 |
Ясно. И что тогда делать? Создать отдельный класс для моей PageForGraphic и уже в нем рисовать?
|
|
|
Алексей1153 |
2.8.2010, 12:05
Сообщение
#13
|
фрилансер Группа: Участник Сообщений: 2939 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
QMainWindow, ну, начнём с того, что каждая вкладка у тебя - в общем случае отдельный класс. По крайней мере - разные экземпляры точно.
То есть, у тебя есть набор вкладок (которые ты можешь включить в ТАБ или не включать) QMyTabPage_name1; QMyTabPage_name2; QMyTabPage_name3; ... На каждой вкладке свои контролы. А контролам пофиг, где они лежат - они выполняют/отображают то, что должны |
|
|
QMainWindow |
2.8.2010, 12:56
Сообщение
#14
|
Участник Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0 |
И как это связано с paintevent?
|
|
|
Алексей1153 |
2.8.2010, 13:03
Сообщение
#15
|
фрилансер Группа: Участник Сообщений: 2939 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
А зачем с ним связывать ? Его вообще надо будет переопределить только в том самом самописном контроле, в котором будет график рисоваться.
А для работы с вкладками его трогать не нужно |
|
|
QMainWindow |
2.8.2010, 13:18
Сообщение
#16
|
Участник Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0 |
А можно примерчик Туго доходит
|
|
|
Алексей1153 |
2.8.2010, 13:28
Сообщение
#17
|
фрилансер Группа: Участник Сообщений: 2939 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
QMainWindow, не совсем понимаю - пример чего?
Давай так: создай новый проект на основе диалога, добавь туда табконтрол, в него несколько вкладок. Затем тебе нужен самописный (или какой там ты хотел применить) виджет. Его кидаешь на нужные вкладки. И это всё. Остальное - детали реализации того виджета (в частности - рисование) Проект прикрепи - где остановился скажи [offtop] Прикольная ситуация - класс QMainWindow задаёт вопросы про работу QWidget ) [/offtop] |
|
|
QMainWindow |
2.8.2010, 16:29
Сообщение
#18
|
Участник Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0 |
Выкладываю непосредственно саму программу. Делать стал недавно, поэтому там мало чего еще написано. Все, что я показывал здесь находится в mainwindow.cpp. Вот ссылка на скачку: http://ifolder.ru/18745087. Если поможите, буду оч. благодарен Просто не возьму в толк, что писать-то надо?)
|
|
|
Litkevich Yuriy |
2.8.2010, 16:43
Сообщение
#19
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
QMainWindow, тебе уже говорили на прогорге, рисовать можно "только" в событии paintEvent. Под сделай виджет для рисования подразумевалось не
new QWidget а создание собственного класса-наследника от QWidget или другого, более подходящего. В обработчике paintEvent этого класса и рисуй. Прикольная ситуация - класс QMainWindow задаёт вопросы про работу QWidget да, к стати.QMainWindow, Придумай себе новый ник, иначе в сообщениях будет каша. |
|
|
QMainWindow |
2.8.2010, 16:51
Сообщение
#20
|
Участник Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0 |
Так я это уже спрашивал, вот:
Ясно. И что тогда делать? Создать отдельный класс для моей PageForGraphic и уже в нем рисовать? Имел в виду, конечно, не просто QWidget, а свой класс, который унаследует все от QWidget. И то, что рисовать можно только в paintEvent это я тоже знаю, вот и спрашиваю, что нужно дописать/создать, чтобы в нем рисовать график для моей вкладки. |
|
|
Текстовая версия | Сейчас: 28.4.2024, 7:32 |