Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.08.2010, 20:27   #11
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

А если подправлять реализацию существующего метода из VCL - с осторожностью и для себя?
Видел туториал как там кое-что подправить, думал попробовать.....
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 17.08.2010, 22:24   #12
Hottabych
Форумчанин
 
Регистрация: 13.01.2008
Сообщений: 140
По умолчанию

В общем, сделал полную копию Graphics с добавлением нужной мне процедуры...
Дело в том, что метод TBitmap.LoadFromStream(stream: TStream) загружает весь поток stream, а мне нужно, чтобы только count байт

Метод LoadFromStream содержит процедуру ReadStream, описанную в секции private класса TBitmap.

Если создать наследника TBitmap1 = class(TBitmap), то из него все равно нельзя будет вызвать приватную процедуру ReadStream, след-но "метод Geo" в данном случае не работает... я правильно понимаю?

Последний раз редактировалось Hottabych; 17.08.2010 в 22:50.
Hottabych вне форума Ответить с цитированием
Старый 18.08.2010, 02:14   #13
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Вы про переходники никогда не слышали?

В своём LoadFromStreamCount вам нужно только вызвать LoadFromStream, передав ему эмулятор потока. Новый тип, наследник TStream, которому вы задаёте реальный поток и ограничения на его размер. Эмулятор работает с этим переданным потоком, но так, как если бы это был поток в указанный размер, а не в Stream.Count.

В простейшем случае, вам у TStream надо будет только подменить методы размеров, а все прочие - перенаправлять на реальный поток.

Достаточно просто.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 18.08.2010, 11:17   #14
Hottabych
Форумчанин
 
Регистрация: 13.01.2008
Сообщений: 140
По умолчанию

Интересный способ, но я уже сделал свой модуль MyGraphics с TBitmap1...
Hottabych вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переопределение стандартных функций LeoN PHP 1 11.06.2010 08:18
Перегрузка стандартных операций Новичек_Rudik Помощь студентам 1 19.04.2010 23:32
Запрет/Разрешение на открытие сторонних(стандартных) программ MyIE Общие вопросы Delphi 2 06.04.2010 23:59
Не подключается BT-адаптер на стандартных драйверах Web-Gangsta Компьютерное железо 6 22.02.2010 16:49
Отключение стандартных обработок DBnavigator Badrvic Компоненты Delphi 3 14.10.2009 11:40