Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

Invalid canvas state request   Найти похожие ветки 

 
goliath ©   (2004-07-23 10:15) [0]

Помогите пожалуйста !!! Возникает такая ошибка при создании объекта динамически и попытке на нем что-либо нарисовать.


 
Sergey Kaminski ©   (2004-07-23 10:18) [1]

Очень информативно.

Но рискну предположить, что создавалось так:
TCanvas.Create

Нельзя.

Можно создать TBitmap (у него есть Canvas) или TMetafileCanvas.


 
han_malign ©   (2004-07-23 10:20) [2]

отрисовку в Paint(или OnPaint), и вызывать Invalidate
и Parent не забыть


 
han_malign ©   (2004-07-23 10:21) [3]

если это TWinControl...


 
goliath ©   (2004-07-23 10:24) [4]

Я пишу на С++ Builder(но и на Delphi то же самое), использую библиотеку CLX. Делаю следующее :

TPicture P = new TPicture();
P->Bitmap->Canvas->Width = W;
P->Bitmap->Canvas->Heidht = H;

Затем пытаюсь что-либо нарисовать ... Тут же получаю в лоб.

Кстати, такое происходит не только при диномическом создании объекта. Если я создаю Image на форме и задаю его размеры, скажем 10000 х 10000, то так же получаю в лоб.


 
DK   (2004-07-23 10:27) [5]

А зачем CLX?


 
Sergey Kaminski ©   (2004-07-23 10:27) [6]

если это TWinControl...

погадаем...


 
goliath ©   (2004-07-23 10:29) [7]

CLX нужен затем, что приложение кроссплатформенное (Windows / Linux)


 
Sergey Kaminski ©   (2004-07-23 10:30) [8]

P->Bitmap->Canvas->Width = W;

Откуда у TCanvas взялся Width?


 
goliath ©   (2004-07-23 10:31) [9]

Извиняюсь ... очепятка ...
Не Canvas->Width , а Bitmap->Width


 
Sergey Kaminski ©   (2004-07-23 10:34) [10]

Затем пытаюсь что-либо нарисовать ... Тут же получаю в лоб.

Что, план Кремля для Пентагона рисуешь? Может покажешь?


 
goliath ©   (2004-07-23 10:35) [11]

ДА ПРОСТИТ МЕНЯ МОДЕРАТОР

Если нет желания помочь, то не страдай хуйней и не забивай тему тупыми вопросами. Что я рисую тебя абсолютно не ебет.


 
Плохиш ©   (2004-07-23 10:42) [12]


> goliath ©   (23.07.04 10:35) [11]

Шёл бы ты к себе в детский садик, молочко пить


 
han_malign ©   (2004-07-23 10:49) [13]

TPicture - это контейнер, его ты создал, а вот кто будет Bitmap создавать? В обязанности TPicture это не входит...


 
goliath ©   (2004-07-23 10:56) [14]

> han_malign

Читает WMF файл и отрисовывает его содержимое. WINAPI пользоваться нельзя, т.к. приложение должно работать и под Linux.

Заметил следующее : все отрисовывается замечательно, пока размеры изображения не превышают 5000 х 5000. Причем при размере изображения более 2000 х 2000 прога начинает серьезно тормозить.


 
han_malign ©   (2004-07-23 11:09) [15]

ресурсов не хватат, посмотри семейство TBitmap.Dormant/ReleaseHandle - что то из них должно переводить в DIB, и экономить ресурсы (ну время отрисовки)...


 
goliath ©   (2004-07-23 11:11) [16]

А под Linux"ом такое работать будет ??


 
han_malign ©   (2004-07-23 11:59) [17]

>А под Linux"ом такое работать будет ??
- ХЗ, по идее должно. Скорее всего, под Linux вообще таких проблем не будет - на этот случай {$IFDEF MSWINDOWS}/{$IFDEF LINUX}.



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
1-1090770542
Виталий
2004-07-25 19:49
2004.08.08
Открытие Helpa


1-1090585840
zorik
2004-07-23 16:30
2004.08.08
Создать форму


4-1088413866
Buster
2004-06-28 13:11
2004.08.08
Как определить время создания файла и директории?


14-1090310431
IceBeerg
2004-07-20 12:00
2004.08.08
Подскажите где можно скачать программу для дизайна комнаты


1-1090569107
Gennadiy
2004-07-23 11:51
2004.08.08
Проблема с созданием меню динамически.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский