Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

mal ne kurze Frage...

Ich habe eine Anwendung mit Datenbank

Im Layout habe ich Datenbankfelder die Ausgefüllt werden müssen vom User.

Jetzt meine Frage: Wenn der User die Felder nicht ausfühlt und dann auf speichern oder neu oder sonst was klickt, will ich, das eine von mir eigene kreierte Fehlermeldung erscheint als MessageBox. Wie kann ich das bewerkstelligen?

Cu

Danny

Geschrieben

welche sprache denn? ich kenn das nur für delphi.

falls du normale editfelder ausfüllen lässt dann sieht das so aus:

if Edit1.Text = '' Then ShowMessage('Feld 1 nicht ausgefüllt'); //'' sind zwei einzelne hochkommas!

und so weiter.

oder du prüfst das mit try...except:

try

{verarbeitung der edits}

except

Showmessage('Editfelder beinhalten Fehler');

end;

das hat aber den nachteil, daß fehler, die durch die verarbeitung entstehen auch damit hineinfallen (nicht nur leere felder)

nich mehr? ;)

<FONT COLOR="#a62a2a" SIZE="1">[ 14. November 2001 12:49: Beitrag 1 mal editiert, zuletzt von [Necrom] ]</font>

Geschrieben

... und wo wir grad dabei sind gib dem Inputfeld direkt wieder den Focus, dann erspart sich der User noch einen Klick ...

If Text1.Text = "" then

msgbox("Sie müssen Text1 ausfüllen")

Text1.SetFocus

end if

Geschrieben

var x : Integer;

Meldung : String;

// Schleife über alle Komponenten des Formulars

for x := 0 to Form1.ComponentCount - 1 do

begin

// Falls es sich um ein TEdit handelt

if (Form1.Components[x] is TEdit) then

begin

// Ist der Text leer ?

if ((form1.Components[x] as TEdit).text = '') then

begin

// Meldung zusammenbauen, könnte anders/besser gemacht werden

Meldung := (form1.Components[x] as TEdit).Name +

' ist nicht gefüllt';

// Windows-Meldung anzeigen

Application.MessageBox(Text, PChar(Meldung),

MB_OK + MB_ICONINFORMATION);

// Fokus setzen

(form1.Components[x] as TEdit).SetFocus;

// und raus

exit;

end;

end;

end;

Hiermit überprüfst du alle Editfelder in deinem Formular (wenn es TPanles oder TScrollboxen etc. gibt muss man es mit denen und nicht mit dem Formular machen) ob etwas eingegeben wurde.

In der Meldung wird der Name der Komponente ausgegeben, was fpr den Benutzer nicht unbedingt schön ist, hier könnte man sich also was schöneres überlegen (über die Tag-Eigenschaft z.B. das dazugehörige Label (TEdit.Tag muss gleich TLabel.Tag sein) bzw. dessen Caption anzeigen oder so ...

Geschrieben

Ups, die Application.MessageBox ist nicht korrekt im Beispiel oben ... MessageBox(PChar(Meldung), PChar(Feld nicht gefüllt', MB_OK + MB_ICONINFORMATION);

müsste es heissen

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von DannyUlm:

<STRONG>Und wie sage ich dann, das wenn etwas darin steht das programm geschlossen wird?

If DBComboBox.Text = // was muss hier hinter???

than close;</STRONG>

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von DannyUlm:

<STRONG>Und wie siht in diesem Falle der String aus????

</STRONG>

Geschrieben

Was ich meine ist ein X-Belibiger Text.

In der DBCombobox kan irgendwas drinstehen, hauptsache es steht was drin um das programm beenden zu können...

Und wie drrücke ich diesen X-Beliebigen Text in einem String aus?

Geschrieben

kleiner tip...

kauf dir doch mal ein paar bücher zum thema delphi / object pascal oder vb... und dann schritt für schritt durcharbeiten.

oder wenn zu teuer: bücherei oder mal im web nach dokus gucken oder opoensource apps downloaden und gucken wie andere es gemacht haben...

man kommt in der regel nicht weit mit einer programmiersprache wenn man die grundlegenden funktionen nicht kennt und sich bei jedem prob durchfragen muss...

// endlosschleife :)

while ($ihkpruefung != "vernuenftig")

{

}

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...