Fórum Tornar parte de um controle transparente? #213972

13/02/2004

0

Olá, bom dia senhores.

Feliz aniversário aos idealizadores e mantenedores do fórum.
Já fui criticado aqui, certa vez, por ´fazer propaganda´ da revista. Mas não é o interesse comercial que me induz a dizer que é uma grande dobradinha a Revista ClubeDelphi + o Fórum ClubeDelphi... parabens a todos.

Voltando à vaca fria, estou quase terminando um PageControl (um que seja descendente real do TPageControl para evitar vários bugs e problemas com erros que quebrem sua execução, como muitos comerciais que vi por ai) com cores de fundo, bordas e propriedade Flat... Vou repetir: assim que estiver pronto será disponibilizada a todos.

Agora, preciso fazer a parte não desenhada das abas (aquela no canto superior direito) ficar transparente. Já experimentei com o Brush.Style := bsClear , mas não funcionou.

Esta parte precisa ficar transparente, inclusive, porque o usuário pode decidir colocar uma figura de fundo em seu formulário e não iria ajudar ter uma parte não desejada do PageControl chapada na cor do fundo.

Agradeço sugestões... :idea:


Ildefonso

Ildefonso

Responder

Posts

13/02/2004

Marcelo Saviski

Tente com regions

var
  Region: HRGN;
  Points: array[0..5] of TPoint;
begin
  Points[0] := Point(0, 0);
  Points[1] := Point(Abas.width*Abas.cout, 0);
  Point[2] := Point(Abas.Width*Abas.Count, Abas.Height);
  Point[3] := Point(PageControl.Width, Abas.Height);
  Point[4] := Point(PageControl.Width, PageControlHeight);
  Point[5] := Point(0, PageControl.Height);
  Region := CreatePolygonRgn(Points[0], 5, Winding);
  SetRegion(PageControl.Handle, Region);
  DeleteObject(Region);
end;


[size=8:40cdffe410]só comentando, nós não temos nada a ver com a revista, os moderadores e cia,[/size:40cdffe410]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar