AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Hilfe - Probleme mit Booleansch´n Variablen und Schleifen
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe - Probleme mit Booleansch´n Variablen und Schleifen

Offene Frage von "Marcel L."
Ein Thema von Marcel L. · begonnen am 14. Mär 2008 · letzter Beitrag vom 14. Mär 2008
Antwort Antwort
Marcel L.

Registriert seit: 20. Feb 2008
4 Beiträge
 
#1

Hilfe - Probleme mit Booleansch´n Variablen und Schleifen

  Alt 14. Mär 2008, 19:22
Hallo Liebe Gemeinde,
ich hab ne dringende Frage und ich weiß auch nicht warum es einfach nicht funzen will. Also folgendes Problem auf unserer Unit2 läuftn Männchen rum, sprich auf dem feld wo er steht is z.b. imag1.visible:=true. So wir brauchen bei 6 best. Feldern das eine boolsche Variable auf true gestezt wird, was heißen würde die Person steht jetz auf dem Feld:

Delphi-Quellcode:
if form2.image14.Visible=true then zimmer1:=true else zimmer1:=false;
if form2.image17.Visible=true then zimmer2:=true else zimmer2:=false;
if form2.image20.visible=true then zimmer3:=true else zimmer3:=false;
if form2.image23.visible=true then zimmer4:=true else zimmer4:=false;
if form2.image26.visible=true then zimmer5:=true else zimmer5:=false;
if form2.image31.visible=true then zimmer6:=true else zimmer6:=false;

So nun wird EIGENTLICH nur wenn die Person auf dem Feld steht das true aber iwie wills nich, also weiter gehts.

Delphi-Quellcode:
if (checkbox20.checked=true) and('Speisezimmer'=mordort) then
  begin if (checkbox20.checked=true) and (zimmer5=true) then drei:=true; end else begin showmessage('Du Stehst nicht im Speisezimmer!'); zimmer5:=false;abort; end;
  end
ISt verständlich wenn ihr den zusammmenhang nicht versteht also: Wir haben eine Checkbox und man darf eben nur das Feld mit dem Raum ankreuzen in dem die Person steht. SO nun is das Problem manchmal gehts, aber meist machts einfach normal weiter, was ja bedeutet in der schleife war die Boolsche auf True. Aber es kann ja eigentlich nicht sein...

Am Ende der Prozdur hab ich dann einfach wieder alles auf false..

ich weiß nciht ob es vertändlich genug geschildert wurde, da es doch ziemlich Komplex ist. Bei Fragen steh ich gerne zur Verfügung nur wir haben es recht eilig und ich weiß einfach nicht weiter, da es für mcih eigentlich korrekt ist...
Plz Help
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: Hilfe - Probleme mit Booleansch´n Variablen und Schleife

  Alt 14. Mär 2008, 19:33
Zitat:
Delphi-Quellcode:
if form2.image14.Visible=true then zimmer1:=true else zimmer1:=false;
if form2.image17.Visible=true then zimmer2:=true else zimmer2:=false;
if form2.image20.visible=true then zimmer3:=true else zimmer3:=false;
if form2.image23.visible=true then zimmer4:=true else zimmer4:=false;
if form2.image26.visible=true then zimmer5:=true else zimmer5:=false;
if form2.image31.visible=true then zimmer6:=true else zimmer6:=false;
Dascha man gruuselich
Das kann man auch kürzen (dadurch wird es IMHO leserlicher):
Delphi-Quellcode:
zimmer1 := form2.image14.Visible;
zimmer2 := form2.image17.Visible;
...
Und Eure Logik hab ich auch nach der ausschweifenden Beschreibung noch nicht 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
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Hilfe - Probleme mit Booleansch´n Variablen und Schleife

  Alt 14. Mär 2008, 19:34
Man prüft eine Boolean-Variable nier auf True oder False sondern:
if Variable then in deinem Fall kannst du auf die If-Abfrage verzichten:
zimmer1:=form2.image14.Visible; drei := (checkbox20.checked) and (zimmer5);
Markus Kinzler
  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 05:22 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