AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Eigene Komponente von TCustomControl > Eigenschaftseditor!
Thema durchsuchen
Ansicht
Themen-Optionen

Eigene Komponente von TCustomControl > Eigenschaftseditor!

Ein Thema von cherry · begonnen am 11. Apr 2006 · letzter Beitrag vom 9. Aug 2011
 
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#31

Re: Eigene Komponente von TCustomControl > Eigenschaftsed

  Alt 24. Apr 2006, 17:36
Zitat von cherry:
Na?
Wer wird denn hier ungeduldig werden?

Zitat von cherry:
1f) Ich will die Eigenschaft Default zur verfügung stellen.
Da diese Eigenschaft in keinem Vorgänger vorkommt, muss ich diese
selber programmieren. (Ist der Button Default reagiert er auf den Tastendruck Enter,
egal welche Komponente Fokusiert ist).
Schau doch mal in den Quelltext der VCL wie Borland das bei den Buttons gemacht hat.

Zitat von cherry:
Wie Fange ich alle Tastenereignisse ab?
Du verwendest ja schon CM_MOUSEENTER und CM_MOUSELEAVE.
Es gibt noch eine Menge weiterer Messages, die man verwenden kann.

Du musst hier im wesentlichen zwischen drei Arten unterscheiden:
  • WM_XXX Nachichten (Das WM steht für Windows Messages.)
  • CN_XXX Nachichten (Das CN steht für Component Notifications.) und
  • CM_XXX Nachichten (Das CM steht für Component Messages.)
Die WM_XXX Nachichten werden direkt von Windows an die Applikation gesendet. Manchmal sind die Nachichten aber nicht für das Form, sondern für einzelne Komponenten auf dem Form. Aus diesem Grund werden dann von dem Form (bzw. allgemein Parent Objekt) CN_XXX Nachichten an die Controlls gesendet für die die WM_XXX Nachichten eigentlich gedacht waren. Component Notifications sind also refektierte Windows Messages. CM_XXX Nachichten dagegen sind Nachichten die ausschließlich von der VCL generiert werden.

In Komponenten (Objekten) kann demnach WM_, CN_ und CM_ Nachichten abfangen.

Es gibt ein Dokument in dem alle CN und CM Nachichten aufgelistet sind.
(s. Anhang)

Zitat von cherry:
2f) Wie man in meinem Beispiel sieht, versuche ich die standard Caption auf den Komponentennamen zu setzen,
so wie ich es jetzt habe funktionierts. Einzige Nebenwirkung: Setzt man den Button auf ein Formular/Frame, dann
ist die Caption im OBJEKTINSPEKTOR erst gesetzt wenn man eine andere einstellung fokusiert. Zudem ists in meinem
Beispiel schlecht/kompliziert gemacht.
Wie setzte ich nun die standard Caption korrekt?
gleiche Antwort wie bei 1f)

Zitat von cherry:
3f) Ich bin auch dankbar für jeden sonstige Tipp!
Sachen die ich anders machen sollte?
Was mir damals bei der Komponentenentwicklung geholfen hat sind die Quelltexte der VCL.
Diese liegen ja dem Delphi (ich glaube ab Prof) bei.
(z.B. C:\Programme\Borland\Delphi7\Source\...)

Dort kann man sehen wie die Borländer das programmiert haben.
Sehr lehrreich.
Angehängte Dateien
Dateityp: zip delphi_messages_738.zip (5,4 KB, 18x aufgerufen)
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  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 05:46 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 by Thomas Breitkreuz