Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Vorhandene Property im OI (https://www.delphipraxis.net/34112-vorhandene-property-im-oi.html)

Neutral General 17. Nov 2004 17:29


Vorhandene Property im OI
 
Wie kann man (mit einer neuen Komponente) z.B TMeinEdit.Parent im Objektinspektor einstellbar machen ? Oder auch (delphi 3) TMeinImage.Picture.Bitmap.TransparentColor ?

Bei dem zweiten hab ich kläglich angefangen aber komme nicht mehr weiter :(

Delphi-Quellcode:
unit MImage;

interface

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

type
  TMImage = class(TImage)
  private
     TransColor : TColor;
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
    function Trans : TColor;
  public
    { Public-Deklarationen }
  published
    { Published-Deklarationen }
    property TransparentColor : TColor read Trans write TransColor;
  end;

procedure Register;

implementation

function TMImage.Trans : TColor;
begin
  result := TransColor;
end;

procedure Register;
begin
  RegisterComponents('Plus', [TMImage]);
end;

end.
Ich hab das mit den Komponenten irgendwie nicht drauf :roll:
(Bitte nicht auf Tutorials verweisen ... die kenne ich schon ...)

jim_raynor 17. Nov 2004 17:34

Re: Vorhandene Property im OI
 
Du musst statt result:=TransColor result:=Picture.Bitmap.TransparentColor machen. Und fürs Schreiben machst du eine procedure SetTransColor(Value: TColor). In der Wird dann Value der Transparentfarbe zugewiesen.

Ein neues Feld (Hier TransColor) ist überflüssig und ich würde die read/write Prozeduren immer mit Get/Set benennen.

shmia 17. Nov 2004 17:39

Re: Vorhandene Property im OI
 
Zitat:

Zitat von Neutral General
Wie kann man (mit einer neuen Komponente) z.B TMeinEdit.Parent im Objektinspektor einstellbar machen ?

Parent ist ein ganz spezielles Property, dass man im OI nicht einstellen darf.
Grund: dadurch, dass du ein Steuerelement entweder auf das Formular oder auf ein Panel/Groupbox legst,
ist automatisch das Property Parent vergeben.
Wenn du ein Image auf einem Formular liegen hast (Parent=Form1) und du später das Image auf eine
Groupbox legen möchtest, dann musst du das Image ausschneiden, die Groupbox selektieren und wieder einfügen.

Neutral General 17. Nov 2004 17:41

Re: Vorhandene Property im OI
 
@ shimia : Ok das ist mir grad beim Abendessen auch bewusst geworden ^^

Kannst du mir mal ein Beispiel geben mit dem Get- und SetTransparentColor ?
Ich hab das mit deiner Anleitung nicht hinbekommen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 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