Einzelnen Beitrag anzeigen

DelphiUser7

Registriert seit: 27. Aug 2003
179 Beiträge
 
#1

reNamed: Runde Buttons werden nicht sauber angezeigt!

  Alt 29. Okt 2003, 14:01
Hi,
ich hab da SourceCode, mit dem ich runde Buttons erstellen kann; da gibt's nur ein Problem: es werden weiterhin Linien angezeigt, die auf eine (ehemals) 4-eckige Form hindeuten, und zwar unten und rechts => schwarz, oben und links => weiß;
Ich hab da so ne Theorie, dass es sich bei diesen Linien um die Randlinien der ursprünglichen Buttons handelt; wenn man sich nämlich einen Button in Delphi genauer ansieht, dann merkt man, dass genau diese Linien an den eben beschriebenen Seiten auftauchen;
ich würde diese Linien aber gern entfernen; ausserdem tauchen immer noch dieses gestrichelte Viereck auf, sobald ich auf den runden Button klicke, was natürlich bei dem runden Button etwas komisch aussieht; hat jemand eine Idee, wie ich dieses Viereck entweder auch noch rund machen, oder noch besser ganz entfernen kann?;
Hinweis: Mir ist noch aufgefallen, dass bei den normalen Windowsbuttons der gleiche Effekt auftritt; deshalb könnte es natürlich schwer werden, die (gestrichelten) Linien ganz zu 'entfernen'; aber rund machen sollte eigentlich möglich sein, oder? Die Frage ist nur: wie?
Hier noch der Quellcode, mit dem ich die Buttons rund gemacht habe (ihr könnt ihn ja auch mal für eure Zwecke verwenden ):
Delphi-Quellcode:
var HR: HRgn;
    n: array[0..3] of TPoint;
begin
  with Form1 do begin // für euch: statt Form1 einfach den Namen der Komponente eingeben,
  //die ihr rundmachen wollt wollt;
   n[0]:=Point(Width div 2,1);
   n[1]:=Point(1, Height div 2);
   n[2]:=Point(Width div 2, Height);
   n[3]:=Point(Width, Height div 2);
   HR := CreateEllipticRgn(0, 0, Width, Height);
   SetWindowRgn(Handle, HR, true);
  end;
 skNormal.Checked := false;
 skAchteck.Checked := false;
end;
Gruss
DelphiUser7
Shell...wieso musste ausgerechnet Shell Teil einer Programmiersprache werden...wieso nicht Esso, Aral oder Dea;

MfG
DelphiUser7
  Mit Zitat antworten Zitat