Komponenten Ereignisse welche keine sind

Rund um die LCL und andere Komponenten
Antworten
siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Komponenten Ereignisse welche keine sind

Beitrag von siro »

Hallo zusammen,

Das Wochenende ist fast erreicht, aber ein Frage bleibt grad noch offen: :?

Komponenten habe ich schon einige geschrieben und das Meiste ist mir auch klar, wie warum und überhaupt...
Aber jetzt wundere ich mich, dass von meiner Komponente, die KEINE Ereignisse bereitstellt,
trotzdem eine published property Eigenschaft in dem Reiter Eigenschaften UND "Ereignisse" erscheint.

Bissle probiert und nun scheint es so zu sein, dass wenn eine Komponente eine Eigenschaft hat,
welche auch eine Komponente ist, diese Eigenschaft auch im "Ereignis" Editor landet.
Dieses Ereignis wird dann auch in "ROT" dargestellt....

Bei der bestehnden Komponente Button hat man das auch. "PopupMenu" erscheint auch im Ereignis Editor.....

Kann man das verhindern bzw. irgendwie steuern ?


Code: Alles auswählen

 
 
Type TSiro = class(TComponent)
  private
    FTest    : TComponent;     
 
  protected { nur interne Verwenung }
 
  public { für den Benutzer verfügbar }     
    constructor create(AOwner:TComponent); override;
    destructor  destroy;                   override;
 
  published { im Objektinspektor einstelbar }
    property Test : TComponent read FTest write FTest;
end;
 


Test erscheint nun als Eigenschaft und als Ereignis...



Danke euch schon mal für Infos:
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Komponenten Ereignisse welche keine sind

Beitrag von siro »

Ich stelle mal die Frage etwas um: :oops:

Warum werden einige Eigenschaften im Objektinstektor ROT dargestellt ?
Diese Eigenschaften tauchen dann auch genrell in rot als Ereignisse auf, obwohl das ja garkeine Ereignisse sind.... :cry:

Kann man das abschalten oder irgendwie steuern ?
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

shokwave
Beiträge: 470
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Komponenten Ereignisse welche keine sind

Beitrag von shokwave »

Hallo,

ich bilde mir ein, dass die diese Funktionalität noch recht neu ist (1.6?). Sie soll es erleichtern die Ereignisse von verbundenen Komponenten zu sehen/bearbeiten.
Einfaches Beispiel: Du hast eine TDatasource mit einem TDBF verbunden, nun kannst du in den Ereignissen der Datasource den Punkt Dataset erweitern und siehst die Ereignisse des verbundenen DBF. Dasselbe funktioniert auch in den Eigenschaften.
Die rote bzw. grüne Farbe soll dir signalisieren, das die Eigenschaften/Ereignisse nicht zu dem Objekt gehören, welches du gerade ausgewählt hast.
Ob man das wieder abstellen kann weiß ich leider nicht.
mfg Ingo

siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Komponenten Ereignisse welche keine sind

Beitrag von siro »

Guten Morgen,
erst einmal Danke für deine Rückmeldung Ingo.
Ja, das klingt irgendwie plausibel. Ich habe mir das auch grad nochmal bei Delphi 6 angesehen.
Da war das ja auch schon so, ist mir bisher garnicht aufgefallen.... :oops: bzw. nie einen Kopf dürber gemacht
Das tut ja auch nicht weh, ich wunderte mich nur, weil diese Ereignissfelder auch garnicht belegt werden konnten.
Na dann einfach weiter coden...

Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Antworten