AGB  ·  Datenschutz  ·  Impressum  







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

hilfe mit variablen

Ein Thema von Pulli · begonnen am 30. Jan 2003 · letzter Beitrag vom 19. Mai 2003
Antwort Antwort
Seite 1 von 2  1 2      
Pulli

Registriert seit: 30. Jan 2003
11 Beiträge
 
Delphi 7 Professional
 
#1

hilfe mit variablen

  Alt 30. Jan 2003, 15:13
Hallo Leute bin neu hier und auch in der Programmierer Ecke

ich hab ein Problem mit textfeldern. ich hab die textfelder als variablen deklariert und will die jetzt in eine if bedingung schreiben , dass eine fehlermeldung wenn man nichts in das textfeld eingibt. Ich hab es bis jetzt nicht geschafft , aber vielleicht könnt ihr pros mir ja helfen

Ich weiß auch nicht ob ich mich hier richtig ausgedrückt hab und ob es im richtigen bereich des forum gepostet habe , naja bin halt in der hinsicht ein newbie

aber thx schonmal im voraus, falls ihr auszüge aus dem quelltext braucht sagt bescheid, ich pack die dann hier rein.

mfg
Pulli
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: hilfe mit variablen

  Alt 30. Jan 2003, 15:20
Hai Pulli,

willkommen im Forum.

Zitat von Pulli:
ich hab ein Problem mit textfeldern. ich hab die textfelder als variablen deklariert und will die jetzt in eine if bedingung schreiben , dass eine fehlermeldung wenn man nichts in das textfeld eingibt ....
Ich verstehe nicht so ganz was Du mit Textfeldern meinst?
Ich denke mir Du hast auf deiner Form mehrere Editfelder und möchtest nun prüfen ob in den Felder entwas eingegeben wurd?

Wenn JA:

Schreibe mal in das OnExit Ereignisses von deinem Edit:

Delphi-Quellcode:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
 If (Trim ((Sender As TEdit).Text) = '') then
  begin
   ShowMessage ('Bitte etwas eingeben');
   (Sender As TEdit).SetFocus;
  end;
end;
Bei Fragen -> schreiben
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Pulli

Registriert seit: 30. Jan 2003
11 Beiträge
 
Delphi 7 Professional
 
#3

jo

  Alt 30. Jan 2003, 16:53
jojo so hatte ich mir das gedacht , nur es klappt nicht beim compilieren kommt immer eine fehlermeldung "=" gefunden obwohl *)* erwartet. ich hab dich mal im icq geaddet (][DN][Pulli) , da können wir einfacher reden
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#4

Re: jo

  Alt 30. Jan 2003, 17:02
Zitat von Pulli:
...kommt immer eine fehlermeldung "=" gefunden obwohl ) erwartet. ich hab dich mal im icq geaddet ...
Das sieht so aus als hättest Du eine Klammer '(' zu viel gesetzt.

Zähle sie noch einmal nach. Über ICQ bin ich tagsüber nicht online.

Das nutze ich nicht auf dem Rechner im Büro.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#5
  Alt 30. Jan 2003, 17:07
Hallo Pulli,

erstmal herzlich Willkommen!

Wenn Du nur überprüfen willst, ob ich einem Edit was drin steht oder nicht, dann hilft Dir auch dieses:
Delphi-Quellcode:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
  if Length(Edit1.Text) = 0 then
  begin
    ShowMessage('Bitte erst was eingeben!');
  end;
end;
Und damit nichts schief geht, schreibst Du ins OnPaint des Formulares: Edit1.SetFocus;
Damit wird der Cursor ins Edit gesetzt und beim verlassen des Editfeldes, wird obige Prozedur ausgeführt.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Pulli

Registriert seit: 30. Jan 2003
11 Beiträge
 
Delphi 7 Professional
 
#6

ich kopier dir mal den source mom

  Alt 30. Jan 2003, 17:10
das ist der code für den button der das ergebnis ausrechnet und die variablen:
Delphi-Quellcode:
var
  Form1: TForm1;
  a,b,c,d,e,f,g:real;


procedure TForm1.rechnenClick(Sender: TObject);
begin
a:=strtofloat(anzahl_rechner.Text);
if a < 0 then
begin
Application.MessageBox('Bitte eine Zahl über Null eingeben!' , 'Warnung !' , 48);
anzahl_rechner.ReadOnly:=true;
laenge.ReadOnly:=true;
rechnen.Hide;
exit
end;
b:=strtofloat(strom_kwh.Text);
c:=strtofloat(laenge.Text);
if c < 0 then
begin
Application.MessageBox('Bitte eine Zahl über Null eingeben!' , 'Warnung !' , 48);
anzahl_rechner.ReadOnly:=true;
laenge.ReadOnly:=true;
rechnen.Hide;
exit
end;
d:=a*0.35;
e:=d*b*c;
f:=(d*1000)/ 230;
ampere.Text:='' +floattostr(f);
pkw.Text:=''+floattostr(d);
stromkosten.Text:=''+floattostr(e);
anzahl_rechner.ReadOnly:=true;
laenge.ReadOnly:=true;
rechnen.Hide;
end;
hoffe du kannst was damit anfangen
so wie ich das mit den zahlen unter null will ich das auch machen mit dem nichts eingeben.

PS: Daniel B hab deinen source auchmal probiert kommt aber wieder die gleiche fehlermeldung
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#7
  Alt 30. Jan 2003, 17:57
Hallo Pulli,

mein Code und der von Sharky funktionieren wunderbar!
Der Fehler liegt also woanders.
Post bitte die ganze Unit, falls die nciht zu lang ist, einfacher wäre es die .pas einfach als Anhang anzuhängen.
Im mom. erkenne ich keinen Fehler in dem Code, der Fehler scheint! aber woanders zu liegen.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#8
  Alt 30. Jan 2003, 17:57
Moin Pulli,

wenn Du jedesmal wenn ein Wert < 0 eingegeben wird die Felder auf ReadOnly setzt, kann kein korrekter Wert mehr eingegeben werden.
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
Pulli

Registriert seit: 30. Jan 2003
11 Beiträge
 
Delphi 7 Professional
 
#9

jo leute

  Alt 30. Jan 2003, 18:04
irgendwie hab ich das nit gepeilt mit dem OnExit. Das mit dem readonly hat seinen zweck, hab noch nen button "neu" der setzt alle werte wieder zurück und hebt das wieder auf und holt den button rechnen zurück. hab das prob aber auch so gelöst
aber trotzdem thx für eure hilfe
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#10

Re: jo leute

  Alt 30. Jan 2003, 18:13
Zitat von Pulli:
irgendwie hab ich das nit gepeilt mit dem OnExit
Also, dieses Ereigniss tritt ein, sobald das Edit, den Fokus verliert, also der Cursor da rausgeht. Dies geschieht indem man in ein anderes Edit klickt, oder auf ein Button, o.ä.! Sobald eine Komponente den Fokus verliert, tritt dieses Ereigniss ein. Du musst nur im Object Inspector sehen, ab es bei Deiner gewünschten Komponente dabei ist. Den nicht jede Komponente von Delphi hat diese Eigenschaft.

Der Code den ich geschrieben habe, vergleicht nur eines:

Mit der Funktion "Length()" erhält man die länge eines Stringes.
Mit "if Length(Edit1.Text) = 0 then" frage ich ab ob die länge des Textes im Edit gleich 0 ist. Wenn dies der Fall ist, wenn also nichts im Edit steht, dann wird die Message ausgeführt/angezeigt.

Grüsse, Daniel
  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 11: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