![]() |
Delphi-Version: 5
Möchte Buchstaben einzelnd anzeigen
Hallo
ich möchte gerne in einem Editfeld ABCDE schreiben. Und dann auf Knopfdruck soll in einem message feld kommen: 1. Klick = A 2. Klick = B 3. Klick = C 4. Klick = D 5. Klick = E hab das ganze mit einer Schleife probiert die erst links alles Löscht von meiner Position und danach soll das rechte gelöscht werden. Aber irgendwie klappt das nicht
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
var string1,string2:string; laenge,laengeneu,anzahl_Zeichen,anfangsposition,anzahl_Zeichen1,anfangsposition1, anfangsposition2,anzahl_zeichen2,index1,index2 :integer; begin //Länge bestimmen string1:=edit4.text; laenge:=LENGTH(string1); showmessage('Länge '+inttostr(laenge)); // Links löschen For index2:=1 to laenge do begin index1:=1; string2:=edit4.text; anfangsposition1:=index1; anzahl_Zeichen1:=index2-1; delete(string2,anfangsposition1,anzahl_Zeichen1); laengeneu:=laenge-index2+1; showmessage(' BEI index2: '+inttostr(index2)+ ' string 2 IST:'+ string2 ); showmessage(inttostr(laengeneu)); anfangsposition2:=index2+1; anzahl_Zeichen2:=laenge-index2+1; delete(string2,anfangsposition2,anzahl_zeichen2); showmessage('Ergebniss: '+string2); end; end; |
AW: Möchte Buchstaben einzelnd anzeigen
Delphi-Quellcode:
Erscheint mir etwas einfacher.
var
idx: integer; s: string; begin s := Edit4.Text; for idx := 1 to Length(s) do ShowMessage('An Stelle ' + IntToStr(idx) + ' steht ' + s[idx]; end; |
AW: Möchte Buchstaben einzelnd anzeigen
das klappt nicht da kommt immer ein fehler den ich noch nicht gesehen habe
project1.lpr(20.1)Error: Can't create object file:project1.exe ??? Was könnte denn in meinem Programm der Fehler sein? |
AW: Möchte Buchstaben einzelnd anzeigen
Wo hast Du meinen Code denn hingeschrieben? Anscheinend nicht unter TForm1.Button6Click.
[edit] Schau Dir Deine Variablen mal im Debugger an, dann siehst Du schon selbst, was da schief läuft. Nur mal als Tipp: innerhalb der Schleife steht auch Code, der nach außerhalb gehört, wie z.B. div. Zuweisungen. [/edit] |
AW: Möchte Buchstaben einzelnd anzeigen
Ok das klappt jetzt ich hatte irgendwie noch was geöffnet.
Ja das ist viel einfacher. Aber das mit den Eckigen Klammern kannte ich noch nicht Aber den Fehler in meiner Schleife da kannste den vielleicht erkennen? |
AW: Möchte Buchstaben einzelnd anzeigen
Siehe mein Edit.
|
AW: Möchte Buchstaben einzelnd anzeigen
was ist denn der debugger?
ich sehe das irgendwie das string2 sich ja immer wiederholt und nicht bei meinem letzten wert bleibt aber wenn ich das vor die schleife stelle gehts auch nicht? |
AW: Möchte Buchstaben einzelnd anzeigen
In Delphi 7 sieht es so aus: Menü 'Ansicht' > 'Desktop Fenster'
Dort hast du zwei für dich interessante Menüpunkte, die du übrigens auch über Tastenkombinationen erreichst: 'Lokale Variablen' auch über Strg+Alt+L zu öffnen 'Überwachte Ausdrücke' auch über Strg+Alt+W zu öffnen Am schnellsten und einfachsten für dich sind 'Lokale Variablen'. Sie zeigen alle aktuellen Variablen mit Inhalt (soweit möglich) der aktuellen Prozedur/Funktion/usw. Trotz dessen, dass sie lokal sind, existieren nicht alle Variablen zu jeder Zeit. Objekte müssen erst erzeugt werden, wird eine Variable nicht mehr benötigt, wird sie verworfen, usw. Also nicht wundern wenn nicht zu jeder Zeit ein Ergebnis angezeigt wird. Etwas komplexer, aber auch mächtiger ist 'Überwachte Ausdrücke'. Sie Zeigt alle Variablen an, soweit möglich und explizit abgefragt. |
AW: Möchte Buchstaben einzelnd anzeigen
ja mit strg alt und L habe ich nun ein leeres Fenster?
Wie soll mir das nun weiter helfen? |
AW: Möchte Buchstaben einzelnd anzeigen
Es wird erst "voll" wenn das Programm gestartet ist und du dich in der entsprechenden Prozedur befindest.
Klicke mit der Maus in die entsprechende Zeile und setzte mit F5 einen Haltepunkt. Starte das Programm. Es wird an dem Haltepunkt anhalten und dir das Fenster mit den lokalen Variablen anzeigen. Und dieses Mal werden die Variablen da sein. Bei der Gelegenheit - wenn du die Variable im Debug-Fenster doppelklickst (erreichbar auch über Kontextmenü) öffnet sich ein kleiner Debug-Inspektor. In dem kannst du zur Laufzeit den Wert der Variable ändern/anpassen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz