Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль

Купить рекламу на форуме 15-35 тыс рублей в месяц

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2010, 03:54   #1
restarterx
 
Регистрация: 19.11.2010
Сообщений: 8
Восклицание Как заставить собственный класс работать с канвой формы

Здравствуйте!

Есть форма, скажем описаная в Unit1.pas.
Также есть написаный вручную клас, который лежит в Class.pas.

Так вот, этот клас, который сидит в Class.pas должен работать с канвой формы из Unit1.pas, тоетсь рисовать на ней. Как это сделать?
restarterx вне форума Ответить с цитированием
Старый 25.11.2010, 05:56   #2
Prisioner
Google user
Пользователь
 
Регистрация: 20.09.2010
Сообщений: 27
По умолчанию

возможно решение корявое. А если в public класса засунуть переменную типа TCanvas и при вызове класса из Unit1.pas передавать ей Form1.Canvas ? а в самом классе все действия относящиеся к канве формы совершать с этой переменной.
Pascal/Delphi
ICQ: 2881228
Prisioner вне форума Ответить с цитированием
Старый 25.11.2010, 06:06   #3
restarterx
 
Регистрация: 19.11.2010
Сообщений: 8
По умолчанию

Делал так, вылетает в Access Violation
restarterx вне форума Ответить с цитированием
Старый 25.11.2010, 07:49   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,162
По умолчанию

Во-первых неудачное название юнита. Во-вторых, можно описать процедуру как
Код:
Bla_bla (Form: TForm);
А уже потом обращаться внутри процедуры к канвасу данной формы.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 25.11.2010, 11:09   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,406
По умолчанию

Цитата:
Также есть написаный вручную клас, который лежит в Class.pas.

Так вот, этот клас, который сидит в Class.pas должен работать с канвой формы из Unit1.pas,
Класс может (если есть class procedure), но не обязан работать. Работать должен объект данного класса.
Телепатор подсказывает что такой объект НЕ БЫЛ создан. Работать некому. получаем Access Violatation.
код работы с данным классом в студию.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi7,как создать собственный класс ? -ushёl- Общие вопросы Delphi 15 13.06.2010 01:02
как работать с канвой лорд преисподней Помощь студентам 10 26.11.2009 19:35
Как заставить работать NFS 2 SE? Манжосов Денис :) Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 02.11.2008 16:35
Как заставить работать php? yourself Помощь студентам 9 20.05.2008 08:08
Как заставить работать dll ? Volkogriz Общие вопросы Delphi 10 13.12.2007 10:24