AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Fragen zu Memo-Felder

Ein Thema von -lx- · begonnen am 11. Dez 2005 · letzter Beitrag vom 11. Dez 2005
Antwort Antwort
Seite 1 von 2  1 2   
-lx-
(Gast)

n/a Beiträge
 
#1

Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:06
Hallo.

Also ich würde gerne mal wissen, wie ich die gesamte Länge eines eingegebenen Textes in ein Memo-Feld auslesen kann.

wenn ich:

Laenge:= Length(MText.Lines) ; // Laenge ist ein Integer-Typ schreibe, meckert Delphi, dass das "inkompatible Typen" sind.


Wes wer Rat?




Mit freundlichen Grüßen
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:08
Hai -lx-

der gesamte Text (inkl. der Zeichen für den Zeilenumbruch!!) müsste in der Eigenschaft Delphi-Referenz durchsuchenText stehen.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
-lx-
(Gast)

n/a Beiträge
 
#3

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:14
Diese Eigenschaft gibt es aber nicht bei Memo-Feldern.

Der Text, den man eingibt, steht in der Eigenschaft "Lines" (TStrings)...


mh...
  Mit Zitat antworten Zitat
Benutzerbild von Cyberbob
Cyberbob

Registriert seit: 24. Jan 2005
Ort: Karben
626 Beiträge
 
Delphi XE7 Architect
 
#4

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:17
Nein, mit Lines kannst du Zeilen einfügen, mit Text kannst du einen Kompletten Text einfügen. Wenn du Lines benutzt, wird die Neue Zeile angehängt, wenn du Text benutzt, wird der alte Inhalt gelöscht,

Du hast abgefragt, wieviel Zeilen das Memo hat. Dies ist nicht möglich, da Lines ein String-Datentyp ist.

Wenn du abfragen möchtest, wieviel Zeichen im Memo sind benutze: Length(Memo1.Text)
Wenn du die Anzahl der Zeilen abfragen möchtest, benutze: Memo1.Lines.Count

MfG
Cyberbob
Christian
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:21
Hi,

Sharky meinte vielleicht Memo.Lines.Text ...

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:23
Zitat von -lx-:
Diese Eigenschaft gibt es aber nicht bei Memo-Feldern.
Nein? Bei mir gibt es die Eigenschaft.

In Delphi-Referenz durchsuchenLines stehen die einzelnen Zeilen des Memos. In Text steht der gesamte Text.

Du könntest es natürlich so machen wenn Du die Anzahl der Zeichen haben möchtest:

Delphi-Quellcode:
function CountMemoLines (aMemo : TMemo) : integer;
var
  ndx : integer;
  counter : integer;
begin
  counter := 0;
  for ndx := 0 to Pred(aMemo.Lines.Count) do
  begin
   counter := counter + Length(aMemo.Lines[ndx]);
  end;
  result := counter;
end;

procedure TForm1.btn_CharCountClick(Sender: TObject);
begin
  ShowMessage(IntToStr(CountMemoLines(memo_Memo1))); // Nur die Zeichen
  ShowMessage(IntToStr(Length(memo_Memo1.text))); // inkl. der Zeichen für Zeilenumbruch
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 21:37
Interessant - meine Online-Hilfe unterschlägt mir die property TMemo.Text, aber kein Zweifel, sie existiert.

marabu
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 22:02
Zitat von marabu:
Interessant - meine Online-Hilfe unterschlägt mir die property ...
Jup. Sie steht wirklich nicht direkt in der OH. Das liegt wohl daran das Delphi-Referenz durchsuchenText eine Eigenschaft von .Lines ist.
Nur der Compiler ist so schlau zu erkennen das
Code:
Memo.Lines.Text
das selbe wie
Code:
Memo.Text
ist. Die Codevervollständigung schaft es darum auch die Property anzuzeigen (welche verwirrender Weise vom Type TCaption ist).

Aber Achtung!
Man sollte im Programm nicht zu oft (z.B in einer Schleife) auf .Text zugreifen.
Diese wird bei jeder Abfrage wieder neu zusammengesetzt. Und das kostest natürlich seine Zeit.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
-lx-
(Gast)

n/a Beiträge
 
#9

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 23:49
Hab da snun wie folgt gelöst.

Danke euch

Delphi-Quellcode:
begin
Laenge:= (Length(MText.Text)) ;

For i:= 1 To Laenge Do
 begin
    Buchstabe:= ord(MText.Text[i]) ;
    Case Buchstabe Of
       228 : Satz:= Satz + 'ä' ;
       196 : Satz:= Satz + 'Ä' ;
       246 : Satz:= Satz + 'ö' ;
       214 : Satz:= Satz + 'Ö' ;
       252 : Satz:= Satz + 'ü' ;
       220 : Satz:= Satz + 'Ü' ;
       223 : Satz:= Satz + 'ß' ;
       Else Satz:= Satz + chr(Buchstabe) ;
    end;
 end;
MText.Text:= Satz ;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Fragen zu Memo-Felder

  Alt 11. Dez 2005, 23:56
Wie wäre es mit Delphi-Referenz durchsuchenStringReplace?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 00:05 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