Thema: Delphi Mit Skins arbeiten

Einzelnen Beitrag anzeigen

MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Mit Skins arbeiten

  Alt 3. Feb 2004, 19:25
Er möchte, das seine Form aussieht wie ein Stern, hierzu müsstest du dann beispielsweise einen gelben Stern auf pinkem Hintergrund auf die Form malen, und sagen alles was pink ist mache duchsichtig (eben: TransparentColor).

Is aber wohl blödsinn (mein obiger Post), hab nämlich gerade folgenden Code im EasyDelphiHelper gefunden:
Delphi-Quellcode:
Das Formular wie ein Balloon anzeigen


Übernehme diese beiden Proceduren (OnCreate und OnPaint) und Stelle doe Eigenschaft BorderStyle auf bsNone:

procedure TForm1.FormCreate(Sender: TObject);
var
  formregion, beakregion: HRGN;
  beak: Array [0..2] of TPoint;
begin
  formregion := CreateRoundRectRgn(
                  0, 0, clientwidth, clientheight-48,
                  40, 40 );
  beak[0] := Point( 50, clientheight-50 );
  beak[1] := Point( 55, clientheight );
  beak[2] := Point( 80, clientheight-50 );
  beakregion := CreatePolygonRgn( beak, 3, WINDING );
  CombineRgn( formregion, formregion, beakregion, RGN_OR );
  DeleteObject( beakregion );
  SetWindowRgn( handle, formregion, true );
end;

procedure TForm1.FormPaint(Sender: TObject);
var
  temprgn: HRGN;
begin
  With Canvas.Brush Do Begin
    Color := clBlack;
    Style := bsSolid;
  End;
  temprgn := CreateRectRgn(0,0,1,1);
  GetWindowRgn( Handle, temprgn );
  FrameRgn( Canvas.Handle, temprgn,
            Canvas.Brush.handle, 1, 1 );
  DeleteObject( temprgn );
end;
Zeigt dir deine Form wie ein Balloon an, musst halt in einen Stern abändern.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat