AGB  ·  Datenschutz  ·  Impressum  







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

Bevel auf einem Rechteck

Ein Thema von Chris211183 · begonnen am 15. Okt 2013 · letzter Beitrag vom 24. Okt 2013
Antwort Antwort
Seite 3 von 5     123 45      
Chris211183

Registriert seit: 19. Sep 2013
Ort: Braunschweig
204 Beiträge
 
Delphi 6 Professional
 
#21

AW: Bevel auf einem Rechteck

  Alt 22. Okt 2013, 12:03
jetzt ja




ohhh mannnn eyyyyyyyyyy


Danke
Christian
  Mit Zitat antworten Zitat
Chris211183

Registriert seit: 19. Sep 2013
Ort: Braunschweig
204 Beiträge
 
Delphi 6 Professional
 
#22

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:17
Sodele, alles funzt in meier Komponente, nur wenn ich meinen Rahmen größer ziehe, bleibt mein Bevel in der Größe und vergrößert sich nicht mit...


Delphi-Quellcode:
procedure THixBarGraph.Paint;
var
   R: TRect;

begin
  inherited paint;
  if (Parent = NIL) or not visible
  then exit;
  
  Canvas.Brush.Color := clBtnFace;
  Canvas.FillRect(Rect(0, 0, Width, Height));
  R := Rect((Width - 9) div 2, (Height - 133) div 2,
  (Width + 9) div 2, (Height + 133) div 2);
  Frame3D(Canvas, R, clBtnShadow ,clBtnHighlight , 1);
kann ich das einfach lösen (mit if else Anweisungen) oder muss ich da noch ewig rumdoktern
Christian
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#23

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:33
Rechne einfach nicht wie wild die Koordinaten für dein Rectangle aus, sondern nimm einfach nur

R := Rect(1, 1, Width - 1, Height - 1);
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#24

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:47
Du könntest SetBounds überschreiben und darin Invalidate aufrufen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Chris211183

Registriert seit: 19. Sep 2013
Ort: Braunschweig
204 Beiträge
 
Delphi 6 Professional
 
#25

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:50
@Baumina, dann hätte ich ja nur ein Rahmen den ich verändern kann, ich habe aber einen Rahmen auf einem Rechteck, welcher sich mit vergrößerung des Rechteckes auh proportional verändern soll.

@DeddyH, nein habe ich nicht, das sagt mir auch nichts
Christian
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#26

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:52
Delphi-Quellcode:
type
  THixBarGraph = class(TGraphicControl)
  ...
  public
    procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); override;
    ...
  end;

...

procedure THixBarGraph.SetBounds(ALeft, ATop, AWidth, AHeight: Integer);
begin
  inherited;
  Invalidate;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 11:59
Meiner Meinung nach verhält sich ist mein Vorschlag proportional zur Größe des Rechtecks:

Delphi-Quellcode:
procedure THixBarGraph.Paint;
var
   R: TRect;

begin
  inherited paint;
  if (Parent = NIL) or not visible
  then exit;
  
  Canvas.Brush.Color := clBtnFace;
  Canvas.FillRect(Rect(0, 0, Width, Height));
  // so hast du es im Moment :
             // Links = (Width - 9) div 2
                               // Oben = (Height - 133) div 2
  R := Rect((Width - 9) div 2, (Height - 133) div 2,
             // Rechts = (Width + 9) div 2
                               // Unten = (Height + 133) div 2
            (Width + 9) div 2, (Height + 133) div 2);
  // und so wäre mein Vorschlag:
            // 1 Links innerhalb vom Rechteck
               // 1 Oben innerhalb vom Rechteck
                  // Rechts die Breite vom Rechteck-1
                            // Unten die Höhe von vom Rechteck-1
  R := Rect(1, 1, Width - 1, Height - 1);
  Frame3D(Canvas, R, clBtnShadow ,clBtnHighlight , 1);
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Chris211183

Registriert seit: 19. Sep 2013
Ort: Braunschweig
204 Beiträge
 
Delphi 6 Professional
 
#28

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 12:02
Probiers mal aus !

Vielen Dank euch Beiden !!!
Christian
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
703 Beiträge
 
Delphi 12 Athens
 
#29

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 12:04
Dann darsft du halt nicht mit absoluten Werten rechnen (Height - 133) sondern musst alle Werte mit einem Faktor von Width und Height ableiten, z.B. so:

 R:=Rect (Width div 3, Height div 3, Width - Width div 3, Height - Height div 3);
  Mit Zitat antworten Zitat
Chris211183

Registriert seit: 19. Sep 2013
Ort: Braunschweig
204 Beiträge
 
Delphi 6 Professional
 
#30

AW: Bevel auf einem Rechteck

  Alt 23. Okt 2013, 12:20


habs hinbekommen !!!

Christian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


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 04:34 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