AGB  ·  Datenschutz  ·  Impressum  







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

Label unklickbar machen

Ein Thema von reyka · begonnen am 25. Sep 2008 · letzter Beitrag vom 25. Sep 2008
Antwort Antwort
Seite 1 von 2  1 2      
reyka

Registriert seit: 17. Sep 2008
53 Beiträge
 
#1

Label unklickbar machen

  Alt 25. Sep 2008, 17:13
Mein erster Beitrag, weiß jez auch nicht so richtig, ob das hier der richtige Bereich ist...naja ich frag einfach mal ^^

Ich würde in meinem Prog sehr gerne ein Label unklickbar machen zu mindest für eine zeit, nämlich bis ich wieder label1.XXX:=true;
setze geht das irgendwie?? OHNE das das Label grau wird also nich label1.enable:=false / true

wäre super wenn mir jmnd helfen kann, oder vll sagen könnte wie ich jenes umgehen könnte...

mfg reyka

Is Delpgi Win32 das normale was man in der Schule lernt?? oder welches is das ??^^
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#2

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:36
Hallo und Willkommen in der DP ,

Du kannst Dir doch einfach ein Boolsches Feld definieren, das Du im OnClick des Labels auswertest.
Pseudo-Code:
Delphi-Quellcode:
procedure TFormBla.ButtonBlubbClick(Sender: TObject);
begin
  if Variable_gesetzt then
    ...//Code ausführen
end;
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
reyka

Registriert seit: 17. Sep 2008
53 Beiträge
 
#3

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:40
sorry ich bin ziemlicher anfänger und weiß gerade net so recht was das jetzt bedeuten soll ein boolsches feld selbst zu definieren, was boolean oder wie man das schreibt ist, weiß ich schon...ich will halt das man erst nach onclick button auch onclick label machen kann verstehst du?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#4

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:44
Du meinst, erst wenn ein Button geklickt wurde, soll das Label auch auf Klicks reagieren, ohne dass es sich optisch ändert, richtig?
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
reyka

Registriert seit: 17. Sep 2008
53 Beiträge
 
#5

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:46
genau

PS: eure Smiley sind klasse
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#6

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:50
OK.
Delphi-Quellcode:
...
type TFormBla = class(TForm)
  ...
  private
    FCanClick: Boolean; //Definition eines Boolschen Feldes
  ...
end;

...

//Im Create mit false initialisieren
procedure TFormBla.FormCreate(Sender: TObject);
begin
  FCanClick := false;
end;

//Der Button schaltet FCanClick um
procedure TFormBla.ButtonMachAnAusClick(Sender: TObject);
begin
  FCanClick := not FCanClick;
end;

//Das Label wertet das Feld aus
procedure TFormBla.LabelWuppdiClick(Sender: TObject);
begin
  if FCanClick then
    ShowMessage('Ich wurde geklickt');
end;
Probier's mal aus.
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 inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:52
Ja, Delphi Win32 ist das normale Delphi und höchstwahrscheinlich auch das, was man normalerweise auch lernt.

Zur Frage:
Du deklarierst dir irgendwo in der Klasse deiner Form, am Besten im private-Bereich eine boolsche Variable:
Delphi-Quellcode:
TForm1 = class(TForm)
... irgendwas anderes, was da schon steht
private
  bCanClick: Boolean;

public
... usw
Im OnClick vom Button setzt du diese Variable auf true.
Im OnClick des Labels fragst du sie dann ab.
Delphi-Quellcode:
if not bCanClick then
  exit;
Edit:
Zitat von DeddyH:
Delphi-Quellcode:
//Im Create mit false initialisieren
procedure TFormBla.FormCreate(Sender: TObject);
begin
  FCanClick := false;
end;

//Der Button schaltet FCanClick um
procedure TFormBla.ButtonMachAnAusClick(Sender: TObject);
begin
  FCanClick := not FCanClick;
end;
Initialisierung kannst du dir sparen, da die Variable Member einer Klasse ist und somit beim Create mit false initialisiert wird.
Und dein Button-Code würde den Inhalt jeweils invertieren, ich weiß nicht ob das so gefragt war.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
reyka

Registriert seit: 17. Sep 2008
53 Beiträge
 
#8

Re: Label unklickbar machen

  Alt 25. Sep 2008, 17:58
dumme frage...aber lehrer sagen ja auch immer -> einfach fragen

was bedeutet das b in bcanclick....
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Label unklickbar machen

  Alt 25. Sep 2008, 18:01
Zitat von reyka:
was bedeutet das b in bcanclick....
Das ist die sog. "ungarische Notation". Das "b" im Variablen steht für den Typ "Boolean" (Wahrheitswert). Einen String würde man z.B. "strVariable" nennen.
Aber in Delphi ist es üblicher die Notation "FCanClick" zu Verwenden. Mit dem vorangestellten "F" verdeutlichst Du, dass die Variable "FCanClick" ein (hier: privates) Feld (Attribut) der Klasse TForm1 ist.
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
reyka

Registriert seit: 17. Sep 2008
53 Beiträge
 
#10

Re: Label unklickbar machen

  Alt 25. Sep 2008, 18:08
juhu danke euch hat super geklappt und danke nochmal für die erklärung mit "b" "f" und bla... danke!

jetzt noch schnell eine andere frage...

ich habe ja in meinem programm verschiedene Formulare.. kann man irgendwie im ObjektInspektor (heisst so oder? ) einstellen, das die alle ander gleichen stelle sein sollen? also dass wenn ich jez z.B.
form1.visible:=false;
form2.visible:=true;

das Fenster quasi nicht springt oder kann ich das nur machen, indem ich immer feinsäuberlich alles an die gleiche stelle ziehe^^


mfg reyka
  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:51 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