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

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

Форма не стандартной формы. HELP!!!!! [D6, WinXP]


drnet ©   (2002-04-22 16:51:00) 

Доброе время суток, мастера!
Вопрос такой: Надо сделать форму нестандартной формы. Накачал с торри кучу(5) штук компонентов для этих целей.
ВСЕ компоненты при компиляции хотят DsgnIntf, ок меняем на DesignIntf. А он в свою очередь ссылается на DesignEditors, тут тоже понятно - дописали в uses,но тут проблема - там в Uses-ах "Proxies" и штучка вида IsProxyClass() :(
В сорсах этого Proxies не нашел, и описания IsProxyClass() тоже не видно.
Чего делать не понятно, а надо срочно.
PS: Delphi 6.0 Enterprise Build: 6.163


arhelon   (2002-04-23 14:31:00) [1]

function BitmapToRegion ( Bitmap : TBitmap; TransColor : TColor ;Range : Integer) : HRGN;
var
X, Y : Integer;
XStart : Integer;
Reg1 : HRGN;
begin
Result := 0;
with Bitmap do
for Y := 0 to Height - 1 do
begin
X := 0;
while X < Width do
begin
while ( X < Width) and ( abs(Canvas.Pixels [ X, Y ] - TransColor) < Range) do
Inc ( X );
if X <> Width then
begin
XStart := X;
while (X < Width) and ( abs(Canvas.Pixels [ X, Y ] - TransColor) > Range) do
Inc ( X );
if Result = 0 then
Result := CreateRectRgn ( XStart, Y, X, Y + 1 )
else
begin
Reg1 := CreateRectRgn ( XStart, Y, X, Y + 1 );
CombineRgn ( Result, Result, Reg1, RGN_OR );
DeleteObject ( Reg1 );
end;
end;
end;
end;
end;


IronHawk   (2002-04-23 14:22:00) [2]


> arhelon © (23.04.02 13:42)
> Рисуй сам через регионы и понятней и веселее и сделать моночто
> угодно. Если сильно надо могу исходники выслать функции
> битмапторегион

Мне вішли ПЛЗ !


arhelon   (2002-04-23 13:42:00) [3]

Рисуй сам через регионы и понятней и веселее и сделать моночто угодно. Если сильно надо могу исходники выслать функции битмапторегион


Armen   (2002-04-23 12:27:00) [4]

V BCB6 est" proxies.dcu, voz"mi ego.


Dick   (2002-04-22 19:20:00) [5]

Совет 1 - обойтись без компонентов, есть такая ф-ция SetWindowRgn
или SetWindowRegion(не помню точно) - делает окно c формой как у указанного региона.
Совет 2 - можно поковыряться в самих компонентах, глядишь какой кусочек кода и нароешь.


drnet   (2002-04-22 18:45:00) [6]

В ФАКе есть пример, но это не совсем то, что мне надо.

Вот выкопал в fido7.ru.delphi faq:
[cut]=========-------------
Вопрос: Файл designeditors.pas использует "proxies" в uses.
Исходный текст (proxies.pas) или откомпилированный модуль (proxies.dcu) нигде не находится ни на моем жеском диске ни на D6 Pro CD..

Просто реорганизуйте ваш проект на использование runtime пакетов и добавьте "DesignIDE" к вашемк списку runtime пакетов. Proxies находится здесь, и вам не нужен исходный текст вообще.

Почему это сделано? Просто доя уверенности, что вы не сможете распространять design time части (property editors, component editors), это запрещено по личензии. DesignIDE.bpl не является свободно распространяемым, вы имеете право использовать его только на машине на которой установлена Delphi, подобно Component libraries.
[cut]=========-------------

Но это не помогло :(


-=CrazyFish=-   (2002-04-22 16:55:00) [7]

Здесь в ФАКе есть пример


Наверх

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