Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Buchstaben aus einem Editfeld einzulesen


Dauersuchti - Sa 09.04.05 17:13
Titel: Buchstaben aus einem Editfeld einzulesen
Hi, ich hab bei Google gesucht, hier im Forum aber nix gefunden. Ist es möglich, Buchstaben aus einem Editfeld einzulesen und so zu verarbeiten, dass ich dies in einer Bedinung nutzen kann ?

Ich stelle mir das so nach dem motto vor

Delphi-Quelltext
1:
2:
X:=dann den Befehl(E_Nick.Text);  //Eingabe einlesen
if X= irgendwas then F_Programmauswahl.show

mal ganz krob und stark verkürzt, was bei dem button so ablaufen soll

ich hab keine Ahnung ob das geht hoffe es aber, ich meine mit Zahlen geht es ja auch ...

Wenn ich das im falschen Forum gepostet habe, dann tut mir das leid wusste nicht wo meine Frage hier hinein passt. Es kann auch sein, dass ich diese Frage bei meinem anderen Post mir eingearbeitet habe (wo mir aber keiner Antwortet/antworten kann)

Bitte helft mir, da ich es irgendwie nicht hin bekomme

Edit: als was für eine Variable müsste ich dann X definieren ?

Moderiert von user profile iconAXMD: Delphi-Tags hinzugefügt.


WeBsPaCe - Sa 09.04.05 17:44

:gruebel: Geht es dir um den/die Buchstaben oder um den ganzen Text, den du vergleichen willst?


Dauersuchti - Sa 09.04.05 17:53

Mir geht es darum jeweils einzelne Wörter mit einerander zuvergleichen, also ob von mir aus Haus = Haus ist oder Boot = Haus, ähm ich probier gerade rum und mir ist noch n Problem aufgetreten, wie forme ich denn eine Variable in nen TString um ?


WeBsPaCe - Sa 09.04.05 18:00

Ähh... Edit1.Text ist schon ein TString... ;)

Wenn du also zwei Editfelder hast, die Edit1 und Edit2 heißen und dann im Code sowas schreibst:

Delphi-Quelltext
1:
if Edit1.Text = Edit2.Text then Befehl;                    

dann führt er den Befehl "Befehl" aus. Also z.B. eine ShowMessage, dann sieht das so aus:

Delphi-Quelltext
1:
if Edit1.Text = Edit2.Text then ShowMessage('Beide sind gleich.');                    

Wenn du die Edit-Felder mit einem festgelegten String (Text) vergleichen willst, dann sieht das ungefähr so aus:

Delphi-Quelltext
1:
if Edit1.Text = 'hallo' then ShowMessage('Im Edit1-Feld steht "hallo" drin.');                    

;)

PS: Ohne dir böse zu wollen, aber ein Delphi-Einsteiger-Buch wäre für dich wohl nicht schlecht... ;) Oder hat da jemand in der Schule die ersten 10 Stunden gepennt? :mrgreen:


Dauersuchti - Sa 09.04.05 18:07

Weder noch, da war jemand zu doof zum nachdenken würde ich mal sagen :-(, da sitz ich 2 Stunden am PC und probiere rum und dann ist die Antwort so einfach =(. Man man man da hätte ich echt selbe drauf kommen können, wenn du mir jetzt noch verraten kannst, wie ich es schaffe, dass das was ich in ein Edit feld schreibe, automatisch in Listbox aufgenommen wird, also nachdem ich auf nen Knopf gedrückt habe, dann bist du mein großer Held und der Retter meines Wochenendes.


WeBsPaCe - Sa 09.04.05 18:09


Delphi-Quelltext
1:
ListBox1.Items.Add(Edit1.Text);                    

So? :mrgreen:


Dauersuchti - Sa 09.04.05 18:11

Hä, hab ich das nicht als erstes auch probiert, naja ist ja egal es klappt *jipiii*, also eins muss ich sagen

JUNGE DU BIST GENIAL, HAST MIR MEIN GESAMMTES WOCHENENDE GERETTET VIELEN DANKE


WeBsPaCe - Sa 09.04.05 18:12

:rofl: kP... 8)


Dauersuchti - Sa 09.04.05 18:19

*heul* das klappt ja gar nicht wie es soll, ich dachte das was da rein gesetzt habe bleibt auch, da drin wenn ich das Programm beende =(, des klappt ja doch nicht =(, naja werd ich wohl weiter knobel müssen, bis ichs endlich hin bekomme, aber immerhin bin ich meinem Ziel schon ein stückchen näher gekommen


WeBsPaCe - Sa 09.04.05 18:23

Kannst ja einfach den Code, den du bis jetzt hast hier reinstellen und dann kann ich's dir abändern so wie du's haben willst... ;)


Dauersuchti - Sa 09.04.05 18:27

Nett gemeint und wahrscheinlich läufts eh aufs selber hinaus *G*, aber will selber auch noch n bisschen daran rum knobeln, irgendwie bekomme ich das hin, aber kannst mir gerne einen Tipp geben

Glaub ich habs sogar, kanns sein das der Befehl SaveToFile lautet ? *g*
Edit: ok schon gut des klappt bei mir eh nicht :? bekomm das mit der Datei nicht hin also ma weiter probieren =)


WeBsPaCe - Sa 09.04.05 18:33

:lol: SaveToFile?? Damit speicherst du in eine Datei... ;)

Was willst du denn machen? Du willst den Inhalt von Edit-Feldern vergleichen und dann unter Umständen in eine ListBox hinzufügen...?!?!


Dauersuchti - Sa 09.04.05 18:38

Äh jein nein ach was weiß ich *g*.

Also jetzt erts ma zu dem was ich machen will:

Ich arbeite an nem Loginsystem zu mehreren Programmen, das ganze soll so aus sehen, dass die Person einen Benutzernamen eingeben soll und das dazugehörige Passwort. Dann kann die Person sich einlogen, eigentlich kein Problem mit dem was du mir vorhin gesagt hast. Nun möchte ich aber auch einen adminbereich haben, wo ich neue Benutzer hinzufügen kann und da ich das ja nicht mit Variablen machen kann (da die ja nach beenden des Programms weg sind), dachte ich mir ich mach das in so na schönen Listbox wo halt alle User mit ihrem Passwort gespeichert werden oder so. Darum der spaß mit der Listbox ..., da ich bei dieser sogar die User sehebn kann


WeBsPaCe - Sa 09.04.05 18:43

Aha. Gleich so ein großes Projekt? ;)

Du vergleichst also immer Einträge in der ListBox mit denen in den Edit-Feldern... Ja?


Dauersuchti - Sa 09.04.05 18:46

Ja so wars zumindest geplant *G*, aber ob ich/wir das so hin bekommen ...

Naja bis jetzt wars meistens so, dass ich die Sachen hin bekommen habe auch wenn sie n bisschen schwer ware und deshalb auch so ein großes Projekt nur momentan komme ich ohne hilfe einfach nicht weiter grübel schon ne Woche wie ich das machen kann ... Und gestern hatte ich net idee die ich aber leider nicht umsetzetn kann, wie man merkt =(.

Aber dank dir sind meine Hoffnungen schon wieder etwas gestiegen :-)


WeBsPaCe - Sa 09.04.05 18:50

Soll das wirklich was werden, oder soll's nur was zum Lernen sein?


Dauersuchti - Sa 09.04.05 18:53

öh naja beides, also es ist jetzt nicht für die Schule,also bekomme keine Note darauf ist einfach für mich um n bisschen zu üben und mich an Delphi zu gewöhnen, aber wär natürlich nicht schlecht, wenn das ganze was wird :), ich mein die gesammte Arbeit will ich mir auch nicht um sonst gemacht haben und ich würde sagen ich bekomme das gesammte auch hin, wenn die daten nur in der listbox gespeichert bleiben würden ...


WeBsPaCe - Sa 09.04.05 19:00

Ich mach mich da mal schnell dran...


Dauersuchti - Sa 09.04.05 19:01

cool danke :D


WeBsPaCe - Sa 09.04.05 19:44

Sorry, dass ich so lange gebraucht hab... War zwischendurch noch essen... ;) Ich weiß jetzt zwar nicht, ob das jetzt so sinnvoll ist, dir das Ding da so hinzubrummen, aber ich mach das einfach mal... :lol: Meld dich einfach mit der entsprechenden Codestellen, wenn du was nicht verstehst. Hab extra deshalb auf Kommentare verzichtet. Frag! ;)


Dauersuchti - Sa 09.04.05 19:46

OK mach ich, danke =), aber um ehrlich zu sein siehts bei mir gerade gar nicht so schlecht aus probier meins erst mal weiter zu machen und meld mich dann bei dir ok :) ?


Dauersuchti - Sa 09.04.05 20:21

ok ich hab ne Frage was sagt mir diese zeile ?

 if ListBox2.Items[ComboBox1.ItemIndex] = Edit1.Text then

also ich mein ich weiß schon was se mir sagt, aber wies funktioniert die nur mit dem [ComboBox1.ItemIndex], was sagt mir das in der KLammer ?


WeBsPaCe - Sa 09.04.05 20:53

Also. Die fünfte Zeile in der user.txt ist ja der Name des Users und ebenso ist die fünfte Zeile in pwds.txt das Passwort zu eben diesem User. ComboBox1.ItemIndex zeigt mir also an, welchen User der Benutzer ausgewählt hat. Jetzt schau ich also in der ListBox2 (der ListBox, wo wir die pwds.txt geladen haben) in der selben Zeile nach, wie in der Zeile wo in der user.txt der Username steht, ob es das selbe ist, was der Benutzer in das Edit-Feld als Passwort geschrieben hat. Wenn das das selbe ist, dann stimmt das Passwort und es werden weitere Befehle ausgeführt... ;)


Dauersuchti - Sa 09.04.05 21:16

Axo, danke =), hab ich verstanden, bei dem rest weiß ich was er bedeutet wenn mir noch was nicht verständlich is, dann frag ich dich noch mal =)

Danke


WeBsPaCe - Sa 09.04.05 21:20

Gut. kP... ;)


Dauersuchti - So 10.04.05 15:04

Öhm, wie mach ich es, dass immer der letzte Eintrag in einer ListBox makiert ist ? Also mir geht es hier vorallem darum, wie bekomm ich raus, welchen ItemIndex der letzte Eintrag hat.


Lannes - So 10.04.05 15:16

Hallo,

mit Count-1
minus 1 weil der ItemIndex mit 0 beginnt.


Dauersuchti - So 10.04.05 15:45

Mh mit count klappt das bei mir irgendwie nicht, habs schon ausprobiert.
Mein Ziel ist es, den wert von dem angeklicktem mit dem letzten wert zu tauschen, aber das klappt nicht.

dass müsste doch irgendwie so aussehen oder ?


Delphi-Quelltext
1:
B_Psw.Items.Exchange(CB_psw_change.ItemIndex,LB_Psw.Items.count)                    


Mh wenn ihr ne bessere idee habt, wie ich eine Zahl in einer ListBox ändernlasse, dann sagt mir das bitte, wäre mir nur recht :-)


Öhm noch ne Frage, wie kann ich es machen, dass wenn ich auf nen Button drücke dass dann eine exe ausgeführt wird ?

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt.


WeBsPaCe - So 10.04.05 16:14

Moin!


Delphi-Quelltext
1:
ListBox1.Items.Exchange(ListBox1.ItemIndex, ListBox1.Items.Count-1);                    

;)

Und wegen der Exe: Suche in: Delphi-Forum, Delphi-Library SHELLEXECUTE


raziel - So 10.04.05 16:15

user profile iconDauersuchti hat folgendes geschrieben:
dass müsste doch irgendwie so aussehen oder ?


Delphi-Quelltext
1:
B_Psw.Items.Exchange(CB_psw_change.ItemIndex,LB_Psw.Items.count)                    

Nein, wie Lannes schon richtig erklärt hat, müsste es so aussehen:

Delphi-Quelltext
1:
B_Psw.Items.Exchange(CB_psw_change.ItemIndex,LB_Psw.Items.count-1)                    

Erklärung siehe Lannes letzter Beitrag.

user profile iconDauersuchti hat folgendes geschrieben:
Öhm noch ne Frage, wie kann ich es machen, dass wenn ich auf nen Button drücke dass dann eine exe ausgeführt wird ?

Neue Frage :arrow: Neuer Thread. Aber such vorher bitte (Kleiner Fingerzeig: Suche in: Delphi-Library SHELLEXECUTE)

Gruß,
raziel


Dauersuchti - So 10.04.05 16:43

Ok, habs eh hin bekommen danke euch deshalb

Vielen Dank für eure Hilfe !!!


WeBsPaCe - So 10.04.05 18:20

Wirklich alles?? :shock:


:rofl: Nein, nein... Ich glaub's dir ja... ;)


Dauersuchti - So 10.04.05 19:14

Ok, alles nicht aber das meiste, ne exe zu starten klappt net mein Delphi 5 kennt die Befehle die dazu nötig sind irgendwie nicht =(. Ist aber ja auch egal ich danke euch trotzdem


WeBsPaCe - So 10.04.05 19:20

Oben bei uses ShellAPI dazuschreiben nicht vergessen... ;)


Dauersuchti - So 10.04.05 20:00

axo dass muss ich dazu schreiben ?
Stimmt jetzt gehts, also noch mal vielen danke an alle