AGB  ·  Datenschutz  ·  Impressum  







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

Linien Komponente

Ein Thema von halinchen · begonnen am 15. Sep 2006 · letzter Beitrag vom 20. Sep 2006
 
Benutzerbild von halinchen
halinchen

Registriert seit: 13. Jun 2006
508 Beiträge
 
Delphi 2007 Professional
 
#11

Re: Linien Komponente

  Alt 19. Sep 2006, 18:26
Hi!
Das hab ich jetzt im Quelltext stehen. (Hab mich erstmal nur für die einfache Linie entschieden.)

Delphi-Quellcode:
unit Line;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TLine = class(TComponent)
  private
    A,E:TPoint; //Anfang+Ende
    W:Integer; //Width
    C:TColor; //Color
    Can:TCanvas; /Canvas
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    procedure Draw;
    { Public-Deklarationen }
  published
    property X1:Integer read A.X write A.X;
    property X2:Integer read A.Y write A.Y;
    property Y1:Integer read E.X write e.X;
    property Y2:Integer read E.Y write E.Y;
    property Witdth:integer read W write W;
    property Color:TColor read C write C;
    property Canvas:TCanvas read Can write Can;
    { Published-Deklarationen }
  end;

procedure Register;

implementation


procedure Tline.Draw;
begin
Can.PenPos := A;
Can.Pen.Width := W;
Can.Pen.Color := C;
Can.LineTo(E.X,E.Y);
end;

procedure Register;
begin
  RegisterComponents('Zusätzlich', [TLine]);
end;

end.
Meine Fragen:
1. Can := Form1.Canvas; geht nicht. (Geht schon aber da ist das ja kein Verweis auf Form1.Canvas sondern nur eine Wertübergabe. Und ich möchte einen Verwies.

2.Wie mach ich ein Ereignis? Im meinem Buch steht:

type TEreignis = procedure (Sender: TComponent;var I: Integer) of object;

und dann in der Klasse:

Delphi-Quellcode:
private
FEreignis: TEreignis;
published
property OnEreignis: TEreignis read FEreignis write FEreignis;
Aber wie mach ich, dass das Programm OnEreignis aufruft, wenn irgentwas passiert ist (überzeichnet, geklickt)?
  Mit Zitat antworten Zitat
 


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 06:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz