Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Вниз

Не могу работать с Canvas.Какая-то ошибка не пойму в чем дело   Найти похожие ветки 

 
Женя   (2004-04-18 22:03) [0]

Пишу команду: Form1.Canvas.Rectangle(10,10,10,10);

Получаю:
---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EAccessViolation with message "Access violation at address 0044546C in module "Project1.exe". Read of address 00000238". Process stopped. Use Step or Run to continue.
---------------------------
OK   Help  
---------------------------

Смотрю ЦПУ и вижу:
TcustomForm.GetCanvas
044546c 8B8038020000 mov eax, [eax + $00000238]

Помогите пожалуйста. Может кто знает отчего это и как исправить.


 
Mihey ©   (2004-04-18 22:08) [1]

Пишу то же, не получаю ошибки. Какая Delphi???


 
Женя   (2004-04-18 22:48) [2]

Делфи 7й.


 
Anatoly Podgoretsky ©   (2004-04-18 23:09) [3]

eax = 0
Наверно не создан TcustomForm


 
clover ©   (2004-04-19 10:33) [4]

Могу только посоветовать
Form1.Brush.Bitmap:=TBitmap.Create;
и рисовать на Form1.Brush.Bitmap

Вообще похоже что у вас Canvas не создан??? правдо очень странно ;)


 
Плохиш   (2004-04-19 10:39) [5]

Форм1 не создана


 
Женя   (2004-04-20 15:55) [6]

Пробую так:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
begin
Form1.Brush.Bitmap:=TBitmap.Create;
Form1.Brush.Bitmap.Canvas.Rectangle(10,100,10,100);
end.

Получил вот такое сообщение.
---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EAccessViolation with message "Access violation at address 0044C8FC in module "Project1.exe". Read of address 00000170". Process stopped. Use Step or Run to continue.
---------------------------
OK   Help  
---------------------------

Вчера даже Виндовс переставил. Сейчас стоит ХР и Д7
А вообще я делал все по книжке и там ничего не сказано о том, что надо создавать Canvas (Н.Б.Культин,Делфи 6 и программирование на ObjectPascal. Поэтому я и не создал его. Подскажите как его создавать?
я пробовал
Form1.Canvas.Create;
и в конце Form1.Canvas.Destroy; но результат тот же

У меня задача по ООП я рисую рыбок в аквариуме, использую графические примитивы. Рыбки рисуются треугольниками, квадратиками и проч. Но пока вообще ничего не Рисуется))
Если можно набросьте мне код как создать Canvas и нарисовать на нем линию или что-то другое. Спасибо


 
panov ©   (2004-04-20 17:50) [7]

Создай новый проект, положи на форму кнопку, кликни на нее и посмотри текст программы, сравни со своей.

код

Form1.Brush.Bitmap:=TBitmap.Create;
Form1.Brush.Bitmap.Canvas.Rectangle(10,100,10,100);

добавь в

procedure TForm1.Button1Click(Sender: TObject);
begin
 Form1.Brush.Bitmap:=TBitmap.Create;
 Form1.Brush.Bitmap.Canvas.Rectangle(10,100,10,100);
end;

Лучше всего купить книжку и почитать.


 
тихий вовочка ©   (2004-04-20 23:28) [8]

Я может быть ошибаюсь, но ты рисуешь еще до FormCreate, соответственно у тебя ни формы, ни канвы еще нет.


 
panov ©   (2004-04-21 10:25) [9]

>тихий вовочка ©   (20.04.04 23:28) [8]
Occurs when the form is created.


 
Плохиш   (2004-04-21 10:34) [10]

>panov ©   (20.04.04 17:50) [7]

Только без этого Form1.

Про книжку полностью и безоговорочно поддерживаю :-)


 
Женя   (2004-04-21 11:26) [11]

Спасибо большое всем участвующим. У меня получилось теперь всю форму размалюю! ))



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

Форум: "Media";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.051 c
14-1087058594
AZ
2004-06-12 20:43
2004.07.04
Upgrade hardware & setup Win98


14-1087300358
IllusoryOrion
2004-06-15 15:52
2004.07.04
Настройка IE 6.0


6-1083668390
Checist [root]
2004-05-04 14:59
2004.07.04
Как вытащить Url-адресс из файла типа Ярлык Интернета?


1-1087799703
vecna
2004-06-21 10:35
2004.07.04
Фигня какая-то но все же... TWinControl


6-1081222372
Azazzello
2004-04-06 07:32
2004.07.04
Пересылка строки по сети





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский