AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Wie erkennt Delphi, ob ein Control Child Controls beinhalten darf?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie erkennt Delphi, ob ein Control Child Controls beinhalten darf?

Ein Thema von Zacherl · begonnen am 6. Dez 2013 · letzter Beitrag vom 6. Dez 2013
Antwort Antwort
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

Wie erkennt Delphi, ob ein Control Child Controls beinhalten darf?

  Alt 6. Dez 2013, 15:07
Hallo zusammen,

ich frage mich grade, wie Delphi im Formulardesigner erkennt, ob ein Control Child Controls beinhalten darf. Beispielsweise wird der Parent von einem Butten, den ich auf einen anderen Button platziere, auf das Formular festgelegt. Der Parent von einem Button, den ich auf ein Panel platziere, wird allerdings auf das Panel gesetzt.

Gut soweit ich gesehen habe, gibt es eine Eigenschaft ControlStyle, welche das Attribut csAcceptsControls beinhalten kann.

Wenn ich jetzt aber einen Schritt weitergehe und mir beispielsweise die TPageControl Componente anschaue, komme ich zu dem Ergebnis, dass diese im Forumlardesigner keine Child Controls zulässt (da csAcceptsControls nicht gesetzt wird). Erzeuge ich per Rechtsklick -> Neue Registerseite ein Register, kann ich hierrauf natürlich ganz normal Komponenten platzieren. Das Interessante ist aber, dass die Registerseite selbst von TWinControl abgeleitet ist.

Findet da irgendwo eine selektive Abfrage statt, oder wird die Komponente nur deshalb akzeptiert, weil sie mehr oder weniger indirekt (durch den Befehl im Kontextmenü) erzeugt wird?

Viele Grüße
Zacherl
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

AW: Wie erkennt Delphi, ob ein Control Child Controls beinhalten darf?

  Alt 6. Dez 2013, 15:45
oder wird die Komponente nur deshalb akzeptiert, weil sie mehr oder weniger indirekt (durch den Befehl im Kontextmenü) erzeugt wird?
Ein fehlendes csAcceptControls bedeutet nur, dass der Formular-Designer es dir nicht erlaubt eine Komponente drauf zu lege. Für Programmcode bzw. Designtime-Code besteht diese Beschränkung nicht.

Mit anderen Worten:
csAcceptControls wird nur bei "Benutzer möchte über IOTAFormDesigner.CreateComponent eine Komponente auf ein Control legen" ausgewertet. Bei einem "MyChild.Parent := ContainerControl" findet keine Prüfung auf csAcceptControls statt.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: Wie erkennt Delphi, ob ein Control Child Controls beinhalten darf?

  Alt 6. Dez 2013, 15:59
Vielen Dank für deine Antwort Das erklärt einiges!
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:00 Uhr.
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