AGB  ·  Datenschutz  ·  Impressum  







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

editbox

Offene Frage von "AlexanderBrade"
Ein Thema von AlexanderBrade · begonnen am 8. Mär 2009 · letzter Beitrag vom 8. Mär 2009
Antwort Antwort
AlexanderBrade

Registriert seit: 14. Dez 2008
189 Beiträge
 
Delphi 2005 Personal
 
#1

editbox

  Alt 8. Mär 2009, 18:11
Hallo liebe Community,
ich habe noch ein kleines Problem zu umschiffen.
Ich habe 20 editFelder, nun kann man darin Zahlen von 1-15 eingeben.
Delphi soll eine Meldung ausgeben, wenn in 7 dieser Boxen ein Wert kleiner als 5 steht. Wie geht sowas?
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: editbox

  Alt 8. Mär 2009, 18:27
Mit FindComponent
Blackheart
  Mit Zitat antworten Zitat
craash

Registriert seit: 23. Nov 2008
Ort: Mühlacker
79 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: editbox

  Alt 8. Mär 2009, 18:30
spontan würd ich das so lösen

Delphi-Quellcode:
var editfelder: array [1..20] of TEdit = (edit1, edit2, ...);

procedure deinevent;
var i,zaehler:integer;
begin
zaehler:= 0;

for i:=1 to 20 do
  begin
  if ( strtoint(editfelder[i].text) < 5 ) then zaehler:= zaehler +1;
  end;

if zaehler >=7 then showmessage('bla');

end;
uses Delphi 5 Std. / TurboDelphi 2006
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.343 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: editbox

  Alt 8. Mär 2009, 18:32
Es gibt saubere und unsaubere Varianten.

Du könntest bei Änderungen einen Zähler aktualisieren, der das schon vorher mitzählt, du kannst aber auch einfach jedesmal in einer Schleife alle Edits durchgehen und zählen.

Vielleicht gibt dir das angehängte Projekt einen Hinweis dazu, dort wird beim An- oder Abwählen von CheckBoxen geschaut, dass nur maximal 5 ausgewählt werden können. In deinem Fall müsstest du den Inhalt des Edits in OnChange prüfen, aber das prinzipielle Vorgehen ist gleich.
Angehängte Dateien
Dateityp: zip checkbox_5_aus_12_-_90286_198.zip (219,2 KB, 3x aufgerufen)
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
AlexanderBrade

Registriert seit: 14. Dez 2008
189 Beiträge
 
Delphi 2005 Personal
 
#5

Re: editbox

  Alt 8. Mär 2009, 18:56
Ja damit habe ich schon mal gearbeitet.
Ich weiß aber net wirklich wie ich die Schleife aufbauen soll, so wie das craash vorschlägt wirds problematisch!
  Mit Zitat antworten Zitat
craash

Registriert seit: 23. Nov 2008
Ort: Mühlacker
79 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: editbox

  Alt 8. Mär 2009, 18:59
wieso denn?
uses Delphi 5 Std. / TurboDelphi 2006
  Mit Zitat antworten Zitat
AlexanderBrade

Registriert seit: 14. Dez 2008
189 Beiträge
 
Delphi 2005 Personal
 
#7

Re: editbox

  Alt 8. Mär 2009, 19:01
Naja sowas geht ja garnicht: var editfelder: array [1..20] of TEdit = (edit1, edit2, ...); Sollte ich mich irren sag es mir, aber so nimmt er es nicht an!
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: editbox

  Alt 8. Mär 2009, 19:03
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 i:Integer;
begin
    for i:= 1 to 20 do
    if StrToInt(TEdit(FindComponent('Edit'+IntToStr(i))).Text) < 5 then
    inc(j);
    if j = 7 then ShowMessage('In '+IntToStr(j)+' Edits ist der Wert kleiner als vier');
end;
Blackheart
  Mit Zitat antworten Zitat
craash

Registriert seit: 23. Nov 2008
Ort: Mühlacker
79 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: editbox

  Alt 8. Mär 2009, 19:04
Dass es nicht läuft, wenn du das genau so in den Code hineinkopierst ist doch klar...

Sollte ja nur das Prinzip darlegen, dass du (bei diesem Lösungsweg) die Editfelder zuerst in ein Array zusammenfassen musst.
uses Delphi 5 Std. / TurboDelphi 2006
  Mit Zitat antworten Zitat
AlexanderBrade

Registriert seit: 14. Dez 2008
189 Beiträge
 
Delphi 2005 Personal
 
#10

Re: editbox

  Alt 8. Mär 2009, 19:05
Ja aber wie funktioniert das? Denn bei mir ergebne sich auch nach dem Anpassen Probleme!
  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 08:56 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