AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Farbigen Rand um Form zeichnen

Ein Thema von renekr · begonnen am 14. Dez 2009 · letzter Beitrag vom 15. Dez 2009
Antwort Antwort
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#1

Farbigen Rand um Form zeichnen

  Alt 14. Dez 2009, 14:54
Hallo,

Ich habe eine Form mit borderstyle = none.
So nun habe ich der Form auch noch Runde Ecken gemacht und würde nun gerne auch noch eine Farbige Linie um die Form zeichnen.
Nur macht er um die Ecke keine Farbe hin und auch unten und rechts nicht wenn ich die Ecken gerundet habe.

Code fürs Farbig machen.
Farbigen Rand

Code zum Runden:

Delphi-Quellcode:
procedure TForm1.Make_Form_Round;
var
  rgn: HRGN;
begin
// Form1.Borderstyle := bsNone;
  rgn := CreateRoundRectRgn(0,// x-coordinate of the region's upper-left corner
    0, // y-coordinate of the region's upper-left corner
    ClientWidth, // x-coordinate of the region's lower-right corner
    ClientHeight, // y-coordinate of the region's lower-right corner
    30, // height of ellipse for rounded corners
    30); // width of ellipse for rounded corners
  SetWindowRgn(Handle, rgn, True);
end;
Kann mir ev. jemand einen Tipp geben ?

Vielen Dank.
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Farbigen Rand um Form zeichnen

  Alt 14. Dez 2009, 15:02
Evtl. kannst du in den Hintergrund deines Formulars eine Paintbox legen und bei deren OnPaint-Ereignis einfach den Rahmen zeichnen. Das Stichwort "RoundRect" sollte dir da schonmal weiterhelfen

MFG
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Farbigen Rand um Form zeichnen

  Alt 14. Dez 2009, 15:03
Hallo,

ich hab auch mal eine Form mit gerundeten Ecken gebaut und ebenfalls auch mit einem farbigen Rand.

Ich hab das damals so gelöst:

Delphi-Quellcode:
procedure TMainForm.FormPaint(Sender: TObject);
const
  Pen_Width = 2;
  Round_C = 20;
begin
  with MainForm.Canvas do
    begin
      // Rahmen um die Form aufbauen
      Pen.Width := Pen_Width;
      Pen.Color := clBlack;
      Pen.Style := psInsideFrame;
      RoundRect(0, 0, Width - Pen_Width, Height - Pen_Width, Round_C, Round_C);
    end;
end;
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Farbigen Rand um Form zeichnen

  Alt 14. Dez 2009, 15:10
Das entspricht in etwa meinem Vorschlag, nur dass ich das ganze auf eine extra PaintBox machen würde.
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Farbigen Rand um Form zeichnen

  Alt 15. Dez 2009, 12:31
Hi Helmi,

Vielen Dank.
Binfrüher nicht dazu gekommen.
Aber habs so hinbekommen.

Danke
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz