![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Bmp.StretchDrawTransparent [Delphi]
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 при закрытии формы вызывает ошибку.
С уважением, А.Шаталов.
ANTPro (2006-11-09 21:04:00) [21]> [10] MTsv DN © (09.11.06 20:32)
> хотя функция не менялась с 2.21
Изменилась в 2.37
> [10] MTsv DN © (09.11.06 20:32)
> Так в чем дело 8)
Хочу сделать PSpeedBitmap, но все как-то не до этого.
Есть важное ограничение: Размеры Bitmap'a должны быть кратны 8 (Меня это вполне устраивает)
MTsv DN (2006-11-09 20:32:00) [22]> Что касается Bmp.StretchDrawTransparent, то у меня в 2.41
> работает только с
> волшебным словом USE_OLDCONVERT2MASK.
> Видимо то же и для 2.21 и выше?
> Получается, что казалось бы, стандартный метод работает
> только со старой версией кода?...
У меня и так и сяк работает... Может картинку скинешь, а еще лучше temp-овый проект...
> Версия KOL 2.36+ [MYPAS] - моя попытка оптимизировать:)
> Размер : [10000]x[10000]x[16]
> Время : 219
Так в чем дело 8) Подправь 2.41а(хотя функция не менялась с 2.21), скинь Владимиру upd-файл... ...Пускай дело в массы...если, конечно, это не приват...
ANTPro (2006-11-09 20:04:00) [23]> [8] avs © (09.11.06 19:37)
Старый CONVERT2MASK медленее:
Версия KOL 1.91 [ASM]
Размер : [10000]x[10000]x[16]
Время : 2313
Версия KOL 2.37 [ASM]
Размер : [10000]x[10000]x[16]
Время : 640
Версия KOL 2.36+ [MYPAS] - моя попытка оптимизировать :)
Размер : [10000]x[10000]x[16]
Время : 219
avs (2006-11-09 19:37:00) [24]Доброго времени суток всем.
Что касается Bmp.StretchDrawTransparent, то у меня в 2.41 работает только с
волшебным словом USE_OLDCONVERT2MASK.
Видимо то же и для 2.21 и выше?
Получается, что казалось бы, стандартный метод работает только со старой версией кода?...
avs (2006-11-09 17:35:00) [25]Благодарю всех, кто откликнулся.
MTsv DN, все версии беру только с Вашего сайта, причем KOL и MCK в одном архиве. Версия kol_mck_v2.40c.7z.
Устанавливал с нуля.(Переименвал папку и удалил все упоминания о Kol из Delphi)
Пример, приведенный мною, создавался с нуля под 2.40с, который я пока тестирую.
Кстати... В версии 2.15 использовалась старый вариант функции Convert2Mask...<i/>
Мне абсолютно все едино, со старым или новым вариантом будет работать
Bmp.StretchDrawTransparent, лишь бы работал.
На 2.15 я перешел с 2.39 после сигнала "Большой баг".
между этими версиями 2.15 и 2.40 drawtransparent изменился
Если быть точнее, то в 2.21....
Стало быть, мальчик все же был..
А не было чего либо подобного с Меню?
И можно ли адаптировать меню, рожденное еще где-то в версии 1.85 к 2.41,
или нужно его грохнуть и пересоздать врукопашную с нуля?
Впрочем, возможно, последний вопрос преждевременный.
(В том случае, если вышеупомянутые вещи в 2.41а реализованы иначе, чем в 2.40с)
Качаю 2.41а и буду пробовать.
Еще раз всем спасибо.
MTsv DN (2006-11-09 08:55:00) [26]> между этими версиями 2.15 и 2.40 drawtransparent изменился
Если быть точнее, то в 2.21...
MTsv DN (2006-11-09 08:54:00) [27]Кстати... В версии 2.15 использовалась старый вариант функции Convert2Mask... В 2.41а есть возможность использовать этот вариант (просто я ее использую сам, а когда Владимиру upd-файл скидывал, забыл удалить)... Для этого используйте директиву USE_OLDCONVERT2MASK...
Barloggg (2006-11-09 08:51:00) [28]между этими версиями 2.15 и 2.40 drawtransparent изменился. однако старая версия осталась, надо только вспомнить эту директиву, если уж вам нужна именно старая версия кода.
MTsv DN (2006-11-09 08:46:00) [29]> Фрагмент кода прилагается.
> Kol 2.40
Я улыбаюсь... То Вы на 2.15 переходите, то 2.40 пользуетесь (кстати, а какой 2.40 8) ???)...
Щас тестировал на 2.41а... Результат работы Вашего кода: ПОЛОЖИТЕЛЬНО!!! И СтрейчДроит, и Трансперит тоже...
avs (2006-11-09 07:48:00) [30]Build, конечно, вещь хорошая, без оного я вообще не смог бы ходить с версии на версию.
Сейчас попробовал сделать маленький project c меню и bmp.
Bmp - пустографка с платежного поручения, черно-белая.
Меню действительно стало работать в Design time нормально,но
StretchDrawTransparent не работает.(StretchDraw-ит, но не Transparent-ит)
Фрагмент кода прилагается.
Kol 2.40
var
Form1 {$IFDEF KOL_MCK} : PForm1 {$ELSE} : TForm1 {$ENDIF} ;
{$IFDEF KOL_MCK}
Bmp:PBitmap;
procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
Bmp:=NewBitmap(200,100);
Bmp.LoadFromFile(GetStartDir+'Bmpf.bmp');
end;
procedure TForm1.KOLForm1Paint(Sender: PControl; DC: HDC);
begin
Bmp.StretchDrawTransparent(Dc,Form.ClientRect,clWindow);
end;
[e]Bu$ter (2006-11-08 10:28:00) [31]У всех работает, у вас нет...
Вы уверены, что правильно обновляетесь? Build везде сделан?