Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Bmp.StretchDrawTransparent [Delphi]


Страницы:   1 2

avs ©   (2006-11-08 07:57:00) 

Celeron 1000, win XP SP2
1.По-моему, этот метод, вернее,DrawTransparent не работает.Это произошло в интервале  версий 2.18-2.34.
2.Главное меню отрисовывается после того, как что - либо поменять в нем инспекором объектов либо в DESIGN TIME ткнуть в один из видимых пунктов. Я уже писал об этом. Владимир тогда посоветовал попробовать NOT_USE_KOLCTRLWRAPPER .
В версии 2.40 с меню ситуация  еще интереснее.
Нужно не просто ткнуть в один из видимых пунктов, а сделать это неоднократно 5-6 раз.
В общем, сейчас вернулся на 2.15.
Exe-ник, изготовленный посредством 2.15, под Win98 (Pentium 166)
работает нормально, изготовленный посредством 2.39 при закрытии формы вызывает ошибку.
С уважением, А.Шаталов.


avs   (2006-11-12 15:04:00) [1]

Владимир, снимаю шляпу, а также вопрос по меню.
В версии 2.42  Все работает!


avs   (2006-11-12 14:51:00) [2]

Vladimir Kladov
> Я заметил только что menu bar не отрисовывался при открытии
> формы. Если что-то еще глючит, поясните точнее.

Большое спасибо за StretchDrawTransparent и разъяснения по поводу onChar.  Насчет меню - сейчас установлю 2.42, и сразу же доложу о поведении меню, созданного в старом проекте.


Vladimir Kladov   (2006-11-11 12:19:00) [3]

это относится к конкретному обработчику OnChar. Я делаю так. Проект открывается и Delphi начинает ругаться. Я копирую содержимое обработчика, и очищаю его. Если он после этого не удалился сам (он может не удалиться, если есть еще куча подобных несовместимостей, и я в этом случае на вопрос "remove reference?..." отвечаю "нет", потому что "да" все равно не срабатывает, да и легче так. Отвечать приходится на всю кучу нсовместимых обработчиков). Потом (раз он сам не удалился) переключаюсь в вид dfm формы как текста, нахожу нужный OnChar, удаляю строчку руками, возвращаюсь в вид "as Form". Теперь обработчика точно нет, создаю новый, на этот раз тип у него правильный и их клипборда вставляю тот же код. Если это не последний такой обработчик, процедуру приходится повторять. Вчера переделывал большой проект, 40 форм, в каждой по несколько обработчиков, часа полтора ушло. А что делать, прогресс требует жертв.

Еще несовместим теперь обработчик OnLVData. Все то же самое.

Насчет меню я не знаю. Я заметил только что menu bar не отрисовывался при открытии формы. Если что-то еще глючит, поясните точнее.


avs   (2006-11-11 09:24:00) [4]

Vladimir KladovБлагодарю за помощь.
Теперь о меню. Вновь созданное отрисовывается нормально, а что делать с моим давно созданным и далеко не маленьким, которое глючит?
Есть способ решить это легким движением руки?
И еще один вопрос:
В связи с т.к. тип KOLChar объявлен теперь как не точный эквивалент типа Char (type KOLChar = type Char), то существующие обработчики события OnChar могут становиться несовместимым с новой декларацией ...
Это относится только к обработчикам или нужно поменять Char на KolChar и т.д. в мировом масштабе?
Заранее благодарен, А.Шаталов.


Vladimir Kladov   (2006-11-10 19:12:00) [5]

по прозрачности для 1, 4, 8 бит исправил. Не отрисовывалось меню в дизайнере приоткрытии формы/проекта в IDE? Тоже исправил. И кстати авто-удаление кода присвоения обработчика после его очистки тоже. От кэширования пришлось отказаться для главного меню. Но скорость вроде бы не сильно упала, я попробовал на очень большом меню.


avs   (2006-11-10 18:51:00) [6]

P.S. А Convert2Mask для 1-битного изображения вызывает Bmp.StretchDrawTransparent без всякого принуждения с моей стороны.


avs   (2006-11-10 18:47:00) [7]

MTsv DN А кто ж Вам скажет... Это avs развлекается так
Разъясняю смысл развлечения: На пустой форме рисуется сетка чернымцветом. Посредством отслеживания координат мыши в Runtime определяю координаты и размер окон ввода и избавляюсь от необходимости грузить проект пояснительным текстом к форме ввода платежки. При этом белый фон
нежелателен. Вот собственно и все.


MTsv DN   (2006-11-10 14:58:00) [8]

> что-то я не понял: зачем нужен Convert2Mask для 1-битного изображения, оно и так уже монохромное?
А кто ж Вам скажет... Это avsразвлекается так ;) Я только факт констатирую...

Смысл такой:
1. Берем 1-битного изображение, загружаем его в PBitmap.
2. В FormOnPaint пишем:
Bmp.StretchDrawTransparent(DC, Form.ClientRect, clWhite);
В итоге, PAS-версия рисует ТОЛЬКО черный цвет (т.е. то что и требовалось), а ASM-версия картинку...

Если же вместо clWhite, использовать clBlack, то обе версии, правильно исключают ЧЕРНЫЙ ЦВЕТ...


Vladimir Kladov   (2006-11-10 14:50:00) [9]

что-то я не понял: зачем нужен Convert2Mask для 1-битного изображения, оно и так уже монохромное?


avs   (2006-11-10 13:52:00) [10]

MTsv DNP.S. Может быть, пробежимся по истории TKolMainmenu в этом же диапазоне версий.
Что все-таки поменялось, после чего стала нарушаться отрисовка в Design Time. Тем более, что выяснилось, что KOLCTRLWRAPPER ни при чем.


avs   (2006-11-10 13:46:00) [11]

MTsv DN
Ничего, пока буду пользовать Волшебное слово...


MTsv DN   (2006-11-10 13:42:00) [12]

Ага... Осталось дело за малым...исправить это. Но и сожалению, моих познаний в ASM'е не достаточно для этого :-(


avs   (2006-11-10 12:54:00) [13]

MTsv DN Посмотрел, присланный проект...
Истина установлена. Примите мою благодарность.


MTsv DN   (2006-11-10 12:07:00) [14]

> Это любопытно...
> Установил на P166 , Win98se, Delphi5  2.41а - действительно,
>  все работает.

Не знаю... Не тестировал...

Посмотрел, присланный проект...
В общем, с 1bit изображениями, ASM-версия CONVERT2MASK работает не корректно... Причем не конвертирует только White, Black конвертит нормально...


avs   (2006-11-10 11:23:00) [15]

Это любопытно...
Установил на P166 , Win98se, Delphi5  2.41а - действительно, все работает.


avs   (2006-11-10 09:08:00) [16]

ANTPro , А какой прогой он делается
Уточняю: Загрузки,раздел "Инструменты"


avs   (2006-11-10 07:17:00) [17]

ANTPro
А какой прогой он делается


UpdateMaker лежит в разделе http://kolmck.net/rindex.htm


ANTPro   (2006-11-09 23:40:00) [18]

> [10] MTsv DN ©   (09.11.06 20:32)
> upd-файл...

А какой прогой он делается?


Vladimir Kladov   (2006-11-09 21:45:00) [19]

вы бы чем откатывать все символом условной компиляции попробовали все-таки разобраться, в чем дело. Дайте пример bmp и своего кода для отрисовки transparent, который работает только по-старому. И автору нового варианта будет интересно тоже наверняка.


avs   (2006-11-09 21:33:00) [20]

MTsv DNКидаю сразу все, встречайте.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо