AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi TPanel in Komponente zur Design-Time verstecken
Thema durchsuchen
Ansicht
Themen-Optionen

TPanel in Komponente zur Design-Time verstecken

Ein Thema von pustekuchen · begonnen am 8. Apr 2013 · letzter Beitrag vom 8. Apr 2013
Antwort Antwort
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#1

TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 10:13
Guten Tag,

ich erstelle grade eine VCL-Komponente in der ein zusätzliches TPanel zur Laufzeit erzeugt wird.

Dieses Panel wird mir trotz das die Visible Eigenschaft auf false gesetzt ist, im VCL-Designer angezeigt (Was ja auch Allgemein für Komponenten sinnvoll ist, diese weiterhin im VCL Designer anzuzeigen).

Jedoch möchte ich dieses Panel in bestimmten Fällen nicht anzeigen.

Könnt ihr mir da einen Tipp geben?

Mit freundlichen Grüßen
Delphi programming is awesome.

Geändert von pustekuchen ( 8. Apr 2013 um 10:16 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#2

AW: TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 10:19
Kommt drauf an, was du erreichen willst, aber da ein Panel im Designer immer angezeigt wird, hilft vielleicht:

MyPanel.Height := 0;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 10:19
Wieso wird denn ein Panel, das zur Laufzeit erzeugt wird, im VCL-Designer angezeigt? Habe ich da was falsch verstanden?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 12:14
Kommt drauf an, was du erreichen willst, aber da ein Panel im Designer immer angezeigt wird, hilft vielleicht:

MyPanel.Height := 0;
Ja, das hab ich auch schon als Alternativlösung..

Wieso wird denn ein Panel, das zur Laufzeit erzeugt wird, im VCL-Designer angezeigt? Habe ich da was falsch verstanden?
Das Panel wird im Konstruktor der Komponente erzeugt.
Delphi programming is awesome.
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 12:17
Dieselbe Frage (von DeddyH) ist mir auch durch den Kopf gegangen.
Im constructor der Komponente könnte man schreiben
Delphi-Quellcode:
if (not csDesigning in Self.ComponentState) then
begin
  pnlLaufzeit.Create(Self);
end;
und überall, wo auf das Panel Bezug genommen wird, mittels Assigned(pnlLaufzeit) prüfen, ob es erzeugt wurde.
Dabei fällt mir ein ... wenn das Panel keinen Parent hat, müßte es unsichtbar sein, oder?
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: TPanel in Komponente zur Design-Time verstecken

  Alt 8. Apr 2013, 12:25
Dieselbe Frage (von DeddyH) ist mir auch durch den Kopf gegangen.
Im constructor der Komponente könnte man schreiben
Delphi-Quellcode:
if (not csDesigning in Self.ComponentState) then
begin
  pnlLaufzeit.Create(Self);
end;
und überall, wo auf das Panel Bezug genommen wird, mittels Assigned(pnlLaufzeit) prüfen, ob es erzeugt wurde.
Danke, das hilft mir weiter

Dabei fällt mir ein ... wenn das Panel keinen Parent hat, müßte es unsichtbar sein, oder?
Ja, so ist es.
Delphi programming is awesome.
  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 23:27 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