AGB  ·  Datenschutz  ·  Impressum  







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

if-Funktion will nicht

Ein Thema von Avax2k · begonnen am 22. Jan 2006 · letzter Beitrag vom 23. Jan 2006
Antwort Antwort
Seite 1 von 2  1 2      
Avax2k

Registriert seit: 6. Okt 2005
186 Beiträge
 
Delphi 2005 Professional
 
#1

if-Funktion will nicht

  Alt 22. Jan 2006, 23:03
Hallo..hab folgendes Problem

Delphi-Quellcode:
if Label7.Caption = 'IDthen
  begin
Button1.Enabled := TRUE;
  end else
if Label7.Caption = 'kein Eintragthen
  begin
Button1.Enabled := TRUE;
  end else
Button1.Enabled := FALSE;
ich weiss nicht wieso diese funktion nicht funktioniert..sollte eigentlich gehen..sollte nur ein leichtsinnsfehler drin sein..sorry bei Verbringen des ganzen tages vor dem Rechner kann sowas schon passieren..

sorry...hoffe jemand findet den Fehler

nochmal kurz was ich machen will:
wenn im Label 'ID' oder 'kein Eintrag' steht soll der Button "inaktiv" werden wenn alles andere drin steht dann soll er funktionieren.

sorry NACHTRAG..statt inaktiv --> aktiv..sorry nochmals
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:05
Du hast TRUE und FALSE verwechselt.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:06
Wie wärs damit:

button1.enabled:=not((label7.caption='ID')or(label 7.caption='kein Eintrag'));

Das ist schön elegant.

Nebenbei, deine Lösung macht genau das Gegenteil von dem, was du willst, das ist klar zu erkennen. Wenn da ID oder kein Eintrag drin steht, wird der Button enabled.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

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

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:09
Hallo,

Du kannst es aber auch so machen:
Delphi-Quellcode:
var
  S: String;

begin
  S := Label7.Caption;
  Button1.Enabled := not ((S = 'ID') or (S = 'kein Eintrag'));
Es ist nicht notwendig eine Variable "S" zu erzeugen. Nur ich lade gerne sowas auf eine Variable - ich finde, dass es sich so leichter und einfacher programmieren lässt - aber das ist geschmackssache
mfg
Helmi

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

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:11
Das ist nicht einmal so schlecht. Denn label7.caption ist eine Property, Properties sind Funktionen, Funktionen belasten den Prozessor sinnlos, wenn man sie zwei mal aufruft, obwohl man den Wert auch auslagern könnte.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:16
Äh, mittlerweile haben die Prozessoren eine Taktrate, wo das wohl weniger ins Gewicht fällt. Und wie argumentierst du, wenn ich dir sagen würde, dass die Variable unnötig Platz im Speicher belegt, wenn ich doch jedesmal die Funktion aufrufen könnte? Ob man hier nun die Funktion einmal aufruft und das Ergebnis in einer Variable ablegt oder ob man die Funktion zweimal aufruft bleibt sich letztendlich gleich.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Avax2k

Registriert seit: 6. Okt 2005
186 Beiträge
 
Delphi 2005 Professional
 
#7

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:18
mein Delphi scheint kaputt zu sein denn bei mir funktioniert der Code nicht.

ich versuch es mal mit einem Neustart..vielleicht geht es dann..

denn jetzt bleibt der Button immer Inaktiv, egal ob jetzt 'ID' oder 'kein Eintrag' oder sonstwas drin steht
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

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

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:19
Zitat von Luckie:
Äh, mittlerweile haben die Prozessoren eine Taktrate, wo das wohl weniger ins Gewicht fällt. Und wie argumentierst du, wenn ich dir sagen würde, dass die Variable unnötig Platz im Speicher belegt, wenn ich doch jedesmal die Funktion aufrufen könnte? Ob man hier nun die Funktion einmal aufruft und das Ergebnis in einer Variable ablegt oder ob man die Funktion zweimal aufruft bleibt sich letztendlich gleich.
Auch wenns jetzt offtopic wird - meine Meinung ist, dass es einfacher zu lesen ist, bzw. übersichtlicher wird, wenn man das auf eine Variable schreibt. Gut - bei dem oberen Beispiel wärs jetzt eigentlich egal, aber bei größeren Anweisungen tu ich mich leichter.
mfg
Helmi

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

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:19
Wenn man die Variable doch danach gleich wieder freigibt, sind das ein baar Byte, die für <1 ms den Speicher belegen. Dürfte kein allzu großes Problem sein.

Klar, bei zwei Aufrufen ist das sch..., äh, ziemlich egal, aber bei ein paar Aufrufen mehr... So ne Million oder was weiß ich... OK, warum sollte man 1 Million mal die Caption eines Labels abrufen...
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: if-Funktion will nicht

  Alt 22. Jan 2006, 23:31
Moin Avax2k,

hast Du beachtet, dass Gross-/Kleinschreibung bei dem Vergleich wichtig ist?
Vielleicht solltest Du für die Strings Konstanten anlegen, die Du dann auch zum Füllen der Captions benutzt, dann kannst Du sicher sein, dass Du nicht auf einen Tippfehler aufläufst.

@3_of_8:
properties sind keine Funktionen, es kann sein, dass sie über Methoden (Getter/Setter) angesprochen werden, aber das ist nicht zwingend.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  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 05:42 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