Ошибка "Heap block... |
Здравствуйте, гость ( Вход | Регистрация )
Ошибка "Heap block... |
rcdimon |
9.10.2010, 10:41
Сообщение
#1
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
Всем привет. Делаю виджет для рисования графиков особого вида. На виджете будет сам график, шкалы, легенда и горизонтальная полоса прокрутки. Но на первом же этапе наткнулся на непонятную для меня ошибку. Использую QT Creator. Все из QT SDK.
Этот код запускается, картинку отрисовывает (1 пиксель). Но при закрытии программы вываливаются ошибки Цитата HEAP[ColorView.exe]: Heap block at 0906B848 modified at 0906B864 past requested size of 14 HEAP[ColorView.exe]: Invalid address specified to RtlFreeHeap( 09060000, 0906B850 ) Если создавать QImage прямо в PaintEvent- то все нормально. Но мне нужно чтобы этот QImage, который у меня выполняет роль холста для рисования, был глобальным, доступным для различных функций.
CView.h
Сообщение отредактировал rcdimon - 9.10.2010, 10:48 |
|
|
Litkevich Yuriy |
9.10.2010, 13:20
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
так проще
|
|
|
rcdimon |
9.10.2010, 14:27
Сообщение
#3
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
Цитата painter.drawImage(0,0,DrawArea); Так не работает. а painter.drawImage(0,0,*DrawArea); ведет себя аналогично первому посту темы. |
|
|
Алексей1153 |
9.10.2010, 17:08
Сообщение
#4
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
painter.drawImage(0,0,DrawArea); Так не работает. а как определил, что не работает ? painter.drawImage(0,0,*DrawArea); ведет себя аналогично первому посту темы. а это компилятор не пропустит даже по-моему, ты параметры в функцию не те передаёшь. попробуй всё же использовать эту перегрузку Цитата void QPainter::drawImage ( const QPoint & point, const QImage & image ) This is an overloaded function. Draws the given image at the given point. или эту Цитата void QPainter::drawImage ( const QRectF & rectangle, const QImage & image ) This is an overloaded function. Draws the given image into the given rectangle. Note: The image is scaled to fit the rectangle, if both the image and rectangle size disagree. |
|
|
rcdimon |
9.10.2010, 19:58
Сообщение
#5
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
|
|
|
Алексей1153 |
9.10.2010, 20:01
Сообщение
#6
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
а так
|
|
|
rcdimon |
9.10.2010, 21:02
Сообщение
#7
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
Цитата а так Все как в первом посте. Ято я еще интересное заметил- зыкрываю QTcreator, снова запускаю и запускаю программу на исполнение- нормально работает, нормально завершается. Вставляю хотя бы пробел в код, перекомпилирую- и опять все как в первом посте... какие-то глюки QTcreator чтоли? |
|
|
rcdimon |
9.10.2010, 23:30
Сообщение
#8
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
Вобщем продолжаю работать.. Глюки то появляются, то исчезают... То приложение вообще сразу падает при запуске... Если в режиме отладки, с точками останова- то работает.. пустить в свободное плавание- падает... Ничего не понимаю... QTcreator у всех так ключит или какая-то несовместимость с Win 7? или как это понимать? В прошлом году пользоваться VS + QT, ничего подобного не наблюдалось... но просто я не очень люблю VS...
Сообщение отредактировал rcdimon - 9.10.2010, 23:31 |
|
|
rcdimon |
10.10.2010, 9:34
Сообщение
#9
|
Студент Группа: Участник Сообщений: 69 Регистрация: 27.10.2009 Пользователь №: 1183 Спасибо сказали: 1 раз(а) Репутация: 0 |
Установил все на виртуальной машине с Win XP, действительно работает без глюков вроде бы... странно это все )
|
|
|
Текстовая версия | Сейчас: 3.1.2025, 4:17 |