Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Bevel auf einem Rechteck (https://www.delphipraxis.net/177088-bevel-auf-einem-rechteck.html)

DeddyH 21. Okt 2013 09:44

AW: Bevel auf einem Rechteck
 
Oder das Setzen des Parents? Das wäre mein erster Verdacht.

Chris211183 21. Okt 2013 12:19

AW: Bevel auf einem Rechteck
 
Hi deddyH,

danke !
Nein habe ich nicht !
Meins sieht aber auch so aus, ich schnüffel da heute Abend nochmal durch, irgendwie is das komisch !
Melde mich dann nochmal, obs klappt oder wo der Fehler lag :!::!::!:

Chris211183 21. Okt 2013 12:21

AW: Bevel auf einem Rechteck
 
ne den Parent habe ich auch !
Daher ja meine Verzweiflungen :-)

DeddyH 21. Okt 2013 12:22

AW: Bevel auf einem Rechteck
 
Nochmal im Ganzen:
Delphi-Quellcode:
type
  TMyCompo = class(TGraphicControl)
  protected
    procedure Paint; override;
  end;
   
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    FTest: TMyCompo;
  end;

...

procedure TMyCompo.Paint;
var
  R: TRect;
begin
  inherited;
  Canvas.Brush.Color := clYellow;
  Canvas.FillRect(Rect(0, 0, Width, Height));
  R := Rect((Width - 50) div 2, (Height - 50) div 2,
    (Width + 50) div 2, (Height + 50) div 2);
  Frame3D(Canvas, R, $00DADADA, clDkGray , 1);
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
  FTest := TMyCompo.Create(self);
  FTest.Width := 200;
  FTest.Height := 200;
  FTest.Parent := self;
end;
Damit sollte in etwa das Bild aus meinem Screenshot erscheinen. Allerdings habe ich das jetzt gerade schnell im Editor zusammenkopiert, daher ohne Gewähr.

himitsu 21. Okt 2013 14:23

AW: Bevel auf einem Rechteck
 
Zitat:

Zitat von DeddyH (Beitrag 1232617)
Nochmal im Ganzen:

Und das FormCreate muß im OI am OnCreate der Form angehängt sein.

DeddyH 21. Okt 2013 14:25

AW: Bevel auf einem Rechteck
 
Das versteht sich ja wohl von selbst.

himitsu 21. Okt 2013 16:35

AW: Bevel auf einem Rechteck
 
Zitat:

Zitat von DeddyH (Beitrag 1232631)
Das versteht sich ja wohl von selbst.

Das hatte ich auch mal gedacht, aber wurde eines Besseren belehrt. :stupid:

Chris211183 22. Okt 2013 10:44

AW: Bevel auf einem Rechteck
 
Hab da mal zusammenkopiert und dennoch nix (bin ich zu dämlich ?)

Istbestimmt wieder ein Anfängerfehler :roll:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Math, ExtCtrls;

Type
TMyCompo = class(TGraphicControl)


protected
   procedure Paint; override;
end;



TForm1 = class(TForm)

procedure FormCreate(Sender: TObject);

private
   FTest: TMyCompo;
end;


var
  Form1: TForm1;

implementation

{$R *.dfm}


procedure TMyCompo.Paint;
var
R: TRect;


begin
inherited;
Canvas.Brush.Color := clred;
Canvas.FillRect(Rect(0, 0, Width, Height));
R := Rect((Width - 50) div 2, (Height - 50) div 2,
(Width + 50) div 2, (Height + 50) div 2);
Frame3D(Canvas, R, clblack ,clyellow , 3);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
FTest := TMyCompo.Create(self);
FTest.Width := 200;
FTest.Height := 200;
FTest.Parent := self;

end;

end.

DeddyH 22. Okt 2013 10:47

AW: Bevel auf einem Rechteck
 
Vielleicht hat himitsu doch Recht. Ist das OnCreate-Ereignis des Formulars auch mit der FormCreate-Methode verknüpft (Objektinspektor)?

baumina 22. Okt 2013 10:57

AW: Bevel auf einem Rechteck
 
Klicke auf das Formular und gehe im Objektinspektor unter Ereignisse auf das Ereignis "OnCreate" und mache da einen Doppelklick, so dass in der .DFM folgende Zeile eingefügt wird : OnCreate = FormCreate.

Daraufhin müsste das Ganze klappen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:42 Uhr.
Seite 2 von 5     12 34     Letzte »    

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