AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Memo komponente Buchtaben auslesen,warten,weiterauslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Memo komponente Buchtaben auslesen,warten,weiterauslesen

Ein Thema von Jab · begonnen am 19. Dez 2004 · letzter Beitrag vom 19. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
Jab

Registriert seit: 19. Dez 2004
21 Beiträge
 
#1

Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 12:43
Hallo ich habe folgendes Problem

Ich möchte jeden einzelnen Buchstaben aus einer Memo-Komponente auslesen, also z.B.

(im Memo steht): sadfdsfa

dann (in der selben Dialogbox) unten in ein Säulendiagramm jeweils für s:20% einfügen, dann eine Sekunde warten (säulendiagramm wieder auf 0% setzen,nächsten Buchstaben auslesen), dann für a:10% einfügen (säulendiagramm wieder auf 0% setzen,nächsten Buchstaben auslesen), warten, dann für d:30% einfügen (säulendiagramm wieder auf 0% setzen,nächsten Buchstaben auslesen), ...warten, usw...


Das Problem ist nun, wie schaffe ich es das Delphi einen Buchstaben ausliest, dann z.B. "Gauge1.Progress := (Gauge1.Progress + 20);" macht und erst nach einer Sekunde weiterarbeitet...
Auch soll delphi das automatisieren also z.B. IMMER für s:20% eingeben...

Ich hoffe ihr versteht das was ich da geschrieben hab...
Vielen Dank im voraus...
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#2

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 12:44
wenn du willst, dass immer eine Sekunde Pause gemacht wird, dann könntest du einen Timer nehmen
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 12:45
hi,

in der hilfe steht alles schön erklärt.

zum auslesen: Delphi-Referenz durchsuchenTMemo.lines.text, Delphi-Referenz durchsuchenpos, Delphi-Referenz durchsuchencopy
und zum sekundenweise abarbeiten empfehe ich dir DelayDelay

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Jab

Registriert seit: 19. Dez 2004
21 Beiträge
 
#4

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 12:46
das war flott...
Ja das ist aber nicht mein Hauptproblem...

Eher das auslesen
  Mit Zitat antworten Zitat
Jab

Registriert seit: 19. Dez 2004
21 Beiträge
 
#5

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 12:47
Okay noch ma kurz...
Kann mir das keiner in einfachen Worten (oder Codesnippets) sagen, wie ich einzelne Buchstaben nacheinander aus ner Memo auslesen kann und bei jedem Buchstaben was angezeigt bekomme?

UND JA
Ich hab die Forumsuchfunktion schon benutzt
UND JA
Ich hab mein Englisches Handbusch schon gelesen

Beides ohne nennnenswerten ERfolg
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 13:17
hi,

hm aus dem kopf würd ich jetzt mal sagen:

Delphi-Quellcode:
var currentChar: string;
    position: integer;
begin
  position := 1; //zum anfang setzem

  //solange tun, bis position das ende erreicht hat
  while position <= length(memo1.lines.text) do
  begin
    //aktuellen buchstaben einlesen
    currentchar := copy(memo1.lines.text, position, 1);

    //diesen buchstaben in eine listbox einfügen
    //(du kannst den buchstaben auch anders weiterverarbeiten - zB mit dem gauge
    listbox1.items.add(currentchar);

    //position erhöhen
    position := position+1;

    //eine sekunde warten (achtung! delay gehört nicht zu delphi. s.u.)
    delay(1000);
  end;
end;
ja, delay gibts nicht direkt in delphi. deswegen einfach mal hier in der codelibrary schauen: delaydelay.

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#7

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 13:20
Hi!

Also ich würde das mal so machen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
for i:=1 to length(memo1.Text) do
 begin
  showmessage(Memo1.Lines.Text[i]);
 end;
end;
So hast du jeden einzelnen Buchstaben.


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 13:21
es empfiehlt sich das "memo1.lines.text" in eine zwischen variable zu speichern da dies ein property ist und sonst bei jedem zugriff neu erzeugt wird. Also so machen
Delphi-Quellcode:
var LStr: String;
    LCount: Integer;
    LBuchstabe: Char;
begin
  LStr := Memo1.Lines.Text;
  for LCount := 1 to length(LStr) do
  begin
    LBuchstabe := LStr[LCount];
    //und jetzt kannst du mit LBuchstabe weiterarbeiten..
  end;
end
noch besser wäre jede Zeile extra zu verarbeiten damit im Speicher nicht ein solanger String am Stück ist.
Delphi-Quellcode:
var LZeile: String;
    LCountLines, LCountZeile: Integer;
    LBuchstabe: Char;
begin
  for LCountLines := 0 to Memo1.Lines.count - 1 do
  begin
    LZeile := Memo1.Lines.Strings[LCountLines];
    for LCountZeile := 1 to length(LZeile) do
    begin
      LBuchstabe := LZeile[LCountZeile];
      //jetzt mit LBuchstabe weiterarbeiten wobei auch direct mit "LZeile[LCountZeile]" gearbeitet werden (wäre sogar performanter)
    end;
  end;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Jab

Registriert seit: 19. Dez 2004
21 Beiträge
 
#9

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 13:24
Jo das läuft nur soll Delphi bei jedem Buchstaben was anderes machen.

Also z.B.
Bei s + 10
Bei t + 20

Und nun soll der die memo Komponente nacheinander abarbeiten also erst den Buchstaben prüfen, anzeigen, nächsten Buchstaben prüfen

Also irgendwas mit If...Then

zum warten nehm ich immer sleep(1000)
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#10

Re: Memo komponente Buchtaben auslesen,warten,weiterauslesen

  Alt 19. Dez 2004, 13:25
Hi!

Delphi-Referenz durchsuchencase of


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz