Leerzeichen in String-Variable geht nicht

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
mintpc
Beiträge: 124
Registriert: Mo 6. Sep 2010, 18:39
OS, Lazarus, FPC: Win 7 (L 1.6 FPC 3.0.0)
CPU-Target: Win 7
Wohnort: Mailand

Leerzeichen in String-Variable geht nicht

Beitrag von mintpc »

Hallo zusammen,

ich möchte eine String-Variable mit einem Leerzeichen aus einem
Edit-Feld auslesen und in einem Memo-Feld ausgeben.

Code: Alles auswählen

name:= Edit1.text;
Memo1.append('Herzlich Willkommen '+ (name));
Wenn als Name nun z.B. "Klaus Mueller" eingegeben wird,
gibt es eine Fehlermeldung, nur "Mueller" klappt.

Liegt das an dem Leerzeichen?

Vielen Dank

mintpc

Benutzeravatar
theo
Beiträge: 10895
Registriert: Mo 11. Sep 2006, 19:01

Re: Leerzeichen in String-Variable geht nicht

Beitrag von theo »

Kann das Problem nicht nachvollziehen.
Lazarus Version? Betriebssystem? WidgetSet?

shokwave
Beiträge: 475
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Leerzeichen in String-Variable geht nicht

Beitrag von shokwave »

mintpc hat geschrieben:

Code: Alles auswählen

name:= Edit1.text;
    Memo1.append('Herzlich Willkommen '+ (name));
Liegt das an dem Leerzeichen?
Hallo.

Nein, es liegt wohl eher an der unglücklichen Namensgebung deiner Variable ("name"). Da jede Komponente, eine Eigenschaft "Name" hat und du diese überschreibst kommt es zu der Fehlermeldung.

Bei eigenen Variablen solltest du tunlichst darauf achten, das es diese Bezeichnung noch nicht gibt. Bei kleinen oder Test-Projekten hat sich (glaube ich) bewährt einfach ein "my" voran zustellen (also "myName" statt "name").

In deinem Beispiel könntest du auch komplett auf die Variable verzichten.

Code: Alles auswählen

Memo1.append('Herzlich Willkommen '+ Edit1.text);
mfg Ingo

Live
Beiträge: 144
Registriert: So 22. Aug 2010, 16:06
OS, Lazarus, FPC: Backtrack 5 RC4 - 64bit Gnome
CPU-Target: 64bit
Wohnort: NRW
Kontaktdaten:

Re: Leerzeichen in String-Variable geht nicht

Beitrag von Live »

mintpc hat geschrieben:

Code: Alles auswählen

name:= Edit1.text;
Memo1.append('Herzlich Willkommen '+ (name));
Wozu die Klammer um die Variable?

Und ich denke auch, dass "name" eine eher unglückliche Namensgebung für eine Variable ist.

mintpc
Beiträge: 124
Registriert: Mo 6. Sep 2010, 18:39
OS, Lazarus, FPC: Win 7 (L 1.6 FPC 3.0.0)
CPU-Target: Win 7
Wohnort: Mailand

Re: Leerzeichen in String-Variable geht nicht

Beitrag von mintpc »

Tatsächlich! Ihr habt Recht.

"name" in der TForm1.ButtonClick meint das "name"-Attribut des
Formulars und verändert dieses, nicht meine String-Variable.

Ohhhhh. Vielen Dank! Ich hab schon an meiner Wahrnehmung
gezweifelt. Aber, ich hab wieder was dazu gelernt. :idea:

Beste Grüße

mintpc

Antworten