Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Wie lasse ich den PC Zeichen im Memofeld darstellen?


Future3020 - So 07.11.04 23:02
Titel: Wie lasse ich den PC Zeichen im Memofeld darstellen?
Hallo, ich bin neu hier und habe auch gleich eine Frage. :lol:
Ich programmiere noch nicht lange bzw. fange gerade damit an. Da ich mein Problem nicht treffend bezeichnen kann, weis ich auch nicht wonach ich suchen soll.
Ich möchte folgendes:

Formular: Button, Edit, Memo

Aufgabe: Wenn ich im Editfeld zb. die Zahl 5 eingebe und auf den Button klicke, soll im Memofeld folgendes erscheinen:

''''*''''
'''***'''
''*****''
'*******'
*********

Also es soll ein Rechteck gebildet werden. Aber wie kriegt man das hin. Ich komme einfach nicht drauf. Ok mir ist klar das er ab 1 anfangen soll zu zählen - zu dieser Zahl die im Editfeld steht und dann soviel Sterne am Ende machen soll + 2, aber wie geht das?

Ich wäre für Hilfe Dankbar....


blackbirdXXX - So 07.11.04 23:10

So eine Frage war vor Kurzem schon mal.
So sollte es gehen:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
var i, j: Integer;
    s: String;
begin
    for i := 1 to IntToStr(edit1.text) do
        begin
            s := '';
            for j := 1 to i do
                s := s + '*';
            memo1.Lines.Add(s);
        end;

end;


Moderiert von user profile iconChristian S.: end; eingefügt


blackbirdXXX - So 07.11.04 23:22

//Edit: Hab ein end; vergessen.
@TUFKAPL: Freu mich schon auf die Edit Funktion :D


Future3020 - Mo 08.11.04 00:52

Hallo und danke für deine schnelle Antwort. *freu*

Ich habe es gleich mal ausprobiert, es funkt. auch, aber leider nicht so, wie ich es haben will.

Bei der Eingabe von 5 erscheint das:
*
**
***
****
*****

aber nicht ein Rechteck. Ok wenn ich das jetzt ins Zenter setze ja, aber die 2. Rhei soll nicht 2 sondern 3 Sterne haben. und die nächste nicht 4 sonder 5. Und außerdem sollen diese ' gesetzt werden.
Also müssten es in der ersten Rheie ''''*'''' 4x ' + * + 4' sein, also insgesamt 9 Zeichen bei der Zahl 5.