AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

aktives Visble eines Label zur Designzeit

Ein Thema von Helmi · begonnen am 6. Aug 2014 · letzter Beitrag vom 8. Aug 2014
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 11:41
Hallo,

ich habe mir Edits gebastelt, die wie ein TLabeledEdit ein Label besitzen. Nur meine Edits haben zwei Labels (Pre und Post)
und die Labels könnten über zwei Properties des Edits sichtbar/unsichtbar gemacht werden.

Soweit so gut, zur Laufzeit funktioniert alles wunderbar.

Nur während der Designzeit funktoniert das Visible der Labels nicht (wie auch bei einem normalen Label).

Wie könnt ich zur Designzeit trotzdem das Label verschwinden lassen?
was ich beim debuggen der VCL rausgefunden habe, wird das Verstecken des Labels zur Designzeit verhindert, nur wie könnte
man das umgehen?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#2

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 11:44
Gibt es in XE2 die Eigenschaft DesignVisible?
Philip
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#3

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 11:48
Gibt es in XE2 die Eigenschaft DesignVisible?
nein
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#4

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 11:58
Wenn du das eh schon in eine eigene Komponente gekapselt hast, würde ich TLabel ganz raus werfen. Einfach per TextOut() auf den Parent-Canvas und fertig ist die Laube, bei ausgeschalteter Beschriftung einfach nicht TextOuten.

Wenn es um die Strukturierung der Properties geht, ließe sich im Zweifel ja auch recht einfach eine eigene kleine Label-Klasse bauen. So wahnsinnig viel brint TLabel ja nicht mit, und viel mehr als Positionierung, Font, Alignment und Caption braucht man meistens eh nicht. Das ist fix selbst gestrickt.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 13:07
Wenn Du bei Deiner Lösung mit den Labels bleiben willst könntest Du im DesignMode deren Parents evtl. einfach auf nil setzen.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#6

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 13:42
Man kann natürlich das TLabel auch ableiten, ihm ein DesinVisible-Property verpassen und die stellen in TLabel.Paint entsprechend anpassen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: aktives Visble eines Label zur Designzeit

  Alt 6. Aug 2014, 13:52
... ich wäre dann aber nicht sicher, ob die IDE dann nicht noch irgendwelche Maus-/Tastaturereignisse zuordnet (selbst wenn nichts sichtbares gemalt wird) ...
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#8

AW: aktives Visble eines Label zur Designzeit

  Alt 8. Aug 2014, 10:06
ich werd´s mal mit parent = nil probieren - muss mir nur zuvor den alten parent merken
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Whookie

Registriert seit: 3. Mai 2006
Ort: Graz
441 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: aktives Visble eines Label zur Designzeit

  Alt 8. Aug 2014, 17:56
...oder du erzeugst bzw. zerstörst die TLabels in der entsprechenden SetVisible-Methode ...
Whookie

Software isn't released ... it is allowed to escape!
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#10

AW: aktives Visble eines Label zur Designzeit

  Alt 8. Aug 2014, 18:58
ich hab´s jetzt so gelöst:

Delphi-Quellcode:
procedure TLabeledMaskEdit.SetVisiblePreLabel(Value: Boolean);
begin
  //Wird aufgerufen, wenn sich die Variable "FVisiblePreLabel" ändert
  FVisiblePreLabel := Value;

  //FPreEditLabel beschreiben
  FPreEditLabel.Visible := FVisiblePreLabel;

  If csDesigning in ComponentState then
    If FVisiblePreLabel then
      FPreEditLabel.Parent := FLabel_Parent
    else
      FPreEditLabel.Parent := nil;
end;
Ich merk mir in der SetParent-Procedure den Parent und bei Visible wird der Parent gesetzt, ansonsten Nil
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 06:07 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