AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Memo Zeichenzähler mit Eingabe

Ein Thema von DaveRidge · begonnen am 29. Jan 2010 · letzter Beitrag vom 31. Jan 2010
Antwort Antwort
Seite 1 von 2  1 2      
DaveRidge

Registriert seit: 14. Sep 2009
53 Beiträge
 
#1

Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 22:43
Hallo, ich hab ein kleines Problem. Ich möchte die Zeichen vom Memo feld auslesen, sodass das mit der MaxLength passt. Nur die Eingabetaste nimmt er nicht mit, warum weiss ich net.
Hier ist bis jetzt mein Code:
Delphi-Quellcode:
var wort: string;
zeichenzahl, zeilenzahl,i,zeile,zeichenzaehler: Longint;
begin
 Zeichenzahl:=Memo1.lines.count;
 Zeichenzaehler:=0;
  FOR i:=0 TO zeichenzahl-1 DO
   Begin
    wort:=memo1.lines[i];
   zeichenzaehler:=zeichenzaehler+length(wort);
   end;
Form1.StatusBar1.Panels[1].Text:=('Zeichenzahl: ' + InttoStr(zeichenzaehler));
Ich Bitte um Hilfe

MfG Dave
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 22:46
Warum nicht
Length(Memo1.Text)
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
DaveRidge

Registriert seit: 14. Sep 2009
53 Beiträge
 
#3

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 22:53
Zitat von Luckie:
Warum nicht
Length(Memo1.Text)
Weil er dann bei der eingabetaste 2 Zeichen hinzufügt, statt ein zeichen.

MfG Dave
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 22:55
Ist ja auch richtig. Ein Return führt zu einem Zeilenvorschub und einem Wagenrücklauf. Und die zählen auch zu der Anzahl Zeichen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
29. Jan 2010, 22:56
Dieses Thema wurde von "Luckie" von "Programmieren allgemein" nach "VCL / WinForms / Controls" verschoben.
Delphi VCL Thema.
DaveRidge

Registriert seit: 14. Sep 2009
53 Beiträge
 
#6

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 22:59
Zitat von Luckie:
Ist ja auch richtig. Ein Return führt zu einem Zeilenvorschub und einem Wagenrücklauf. Und die zählen auch zu der Anzahl Zeichen.
Ja, das stimmt, aber er soll bei der Eingabe nur ein zeichen zählen, denn wenn ich ne SMS sende, dann kommen nur 148 Zeichen oder so an, keine 160 Zeichen, wie ich das im Text geschrieben habe, versteht ihr?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 23:00
Na dann ziehe die Anzahl der Zeilen wieder ab. Dann müsste es stimmen. Bei zwei Zeilen hast du vier Steuerzeichen minus zwei Zeilen sind ein Steuerzeichen pro Zeile.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
DaveRidge

Registriert seit: 14. Sep 2009
53 Beiträge
 
#8

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 23:07
Zitat von Luckie:
Na dann ziehe die Anzahl der Zeilen wieder ab. Dann müsste es stimmen. Bei zwei Zeilen hast du vier Steuerzeichen minus zwei Zeilen sind ein Steuerzeichen pro Zeile.
Das hab ich jetzt auch mal gemacht, von den Zeichen her passt es, nur beim Eingabe zählt er immernoch 2 Zeichen, aber dann bei der neuen Zeile der erste Buchstabe zählt er nicht mit. Er fängt dann beim 2.ten Zeichen an.

MfG Dave
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 23:20
Dann von Hand zählen:
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    procedure Memo1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private-Deklarationen }
    cntChars: Integer;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
  Inc(cntChars);
  Caption := IntToStr(cntChars);
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
DaveRidge

Registriert seit: 14. Sep 2009
53 Beiträge
 
#10

Re: Memo Zeichenzähler mit Eingabe

  Alt 29. Jan 2010, 23:34
Zitat von Luckie:
Dann von Hand zählen:
Delphi-Quellcode:
....

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
  Inc(cntChars);
  Caption := IntToStr(cntChars);
end;

Jo, danke. genau das hab ich gesucht. Warum bin ich heut net selber dahinter gekommen?
Ist mir ein rätsel

Trotzdem danke

MfG Dave
  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 03:52 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