AGB  ·  Datenschutz  ·  Impressum  







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

Button freigeben wenn Felder gefüllt sind?

Ein Thema von Leon de Bar · begonnen am 31. Okt 2004 · letzter Beitrag vom 1. Nov 2004
Antwort Antwort
Leon de Bar

Registriert seit: 1. Okt 2004
Ort: Berlin
125 Beiträge
 
Delphi 6 Enterprise
 
#1

Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 07:21
Guten Morgen,

ich hoffe jeder von euch hat daran gedacht seine uhr um eine stunde ZURÜCK zustellen

So nun aber zu meiner Frage.

Ein Form mit mehreren TEdits und einem Button. der button soll erst aktiviert werden, wenn alle felder einen Eintrag haben. Wie setze ich das um?
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

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

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 07:33
Hai Leon de Bar,

am einfachsten machst Du das im .OnChange-Ereigniss der TEdits. Ich habe mal eine Beispiel in dem ich alle Edits der Form durchlaufe und prüfe ob sie ohne Inhalt sind.

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  ndx : Integer;
begin
  Button1.Enabled := False;
  for ndx := 0 to ComponentCount - 1 do // Alle Komponenten der Form durchgehen
  begin
    if (Components[ndx] is TEdit) then // Handelt es sich um ein Edit?
    begin
      TEdit(Components[ndx]).Clear // Inhalt aller Edits löschen
      TEdit(Components[ndx]).OnChange := AllEditChange; // Alle Edits das selbe OnChange zuweisen.
    end;
  end;
end;

procedure TForm1.AllEditChange(Sender: TObject);
var
  ndx : Integer;
  foo : Boolean;
begin
  foo := True;
  for ndx := 0 to ComponentCount - 1 do // Alle Komponenten der Form durchgehen
  begin
    if (Components[ndx] is TEdit) then // Handelt es sich um ein Edit?
    begin
      if (TEdit(Components[ndx]).Text = '') then // Edit ist leer.
      begin
        foo := False; // Button wird deaktiviert
        Break; // Schleife verlassen
      end;
    end;
  end;
  Button1.Enabled := foo;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Leon de Bar

Registriert seit: 1. Okt 2004
Ort: Berlin
125 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 17:09
Hi Sharky,

ich habe dein skript mal übernommen. DANKE dafür. Leider funzt es nicht. er sagt mir, dass ein Simikolon oder Operator fehlt - hinter dem TEdit.

Lege ich einfach eine Procedure an für das AllEditChange an oder wie? im OI kann ich das doch nciht machen, da ist doch immer nur für ein EDIT-Feld...??? Oder...
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#4

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 17:12
TEdit(Components[ndx]).Clear //... Nach dem Clear fehlt das Semikolon.

In seiner ersten Prozedur wird doch das OnChange Ereigniss für die Editfelder festgelegt.
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#5

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 17:14
Zitat von Leon de Bar:
Hi Sharky,

ich habe dein skript mal übernommen. DANKE dafür. Leider funzt es nicht. er sagt mir, dass ein Simikolon oder Operator fehlt - hinter dem TEdit.
Eher VOR dem TEdit bzw. NACH dem Clear.
  Mit Zitat antworten Zitat
Leon de Bar

Registriert seit: 1. Okt 2004
Ort: Berlin
125 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 31. Okt 2004, 17:18
DANKE. Ich habe es verbessert und dann funzte es nicht. Dann habe ich es wieder weg gemacht und es funzte nicht. Nun schreibst du mir, daß ich das so machen muss und nun funzt es...

JETZT löft es wunderbar.


[Edit] Peinliche Wiederholung entfernt [/Edit]
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

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

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 1. Nov 2004, 06:26
Zitat von Leon de Bar:
...im OI kann ich das doch nciht machen, da ist doch immer nur für ein EDIT-Feld...??? Oder...
Hai Leon,

mache mal ein neues Projekt auf. Plaziere doch mehrere TEdits.
Jetzt hast Du zwei möglichkeiten: Markiere alle Edits, gehe im OI auf OnChange und mache einen Doppelklick. Jetzt ist bei allen markierten Edits die selbe OnChange Methode eingetragen.

Oder: Du hast für ein TEdit schon eine OnChnage Methode geschrieben; dann kannst Du diese im OI auch noch weiteren Edits zuweisen. Dafür einfach die Methode in der ComboBox von .OnChange auswählen.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Leon de Bar

Registriert seit: 1. Okt 2004
Ort: Berlin
125 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: Button freigeben wenn Felder gefüllt sind?

  Alt 1. Nov 2004, 06:30
KLASSE

Das ist einfach super dieses Board.

Dank dir Sharky.
  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 00:23 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