AGB  ·  Datenschutz  ·  Impressum  







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

RichEdit Format

Ein Thema von Ykcim · begonnen am 26. Feb 2013 · letzter Beitrag vom 26. Feb 2013
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

AW: RichEdit Format

  Alt 26. Feb 2013, 13:49
If frage mich wofür das gut sein soll.
Richedit ist eigentlich eine verkappte (und kastrierte) Textbearbeitung, die dafür gedacht ist auszudruckenden Text zu erfassen. D.h. die "Zeile" ist nur eine sehr vergängliche Möglichkeit der Textstrukturierung, da je nach Font(größe) und Papierformat die Zeile unterschiedlich lang ist.

Wenn Du Wert auf Fett, Kursiv und unterschiedliche Textfarben legst, solltest Du vllt. synedit verwenden.

Für Deine zweite Anforderung gibt es Format oder falls Du gerne selbst bastelst xxxtostr mit nachträglicher Aufhübschung.

Gruß
K-H
Zu1: Wenn ich auf die ENTER Taste drücke, dann springt er in die zweite Zeile - die nicht sichtbat ist... Das möchte ich verhindern.
Zum besseren Verständnis:
Du hast einen RichEdit von dem nur eine Zeile sichtbar ist?

Warum nutzt Du nich TEdit?
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (26. Feb 2013 um 13:52 Uhr)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#2

AW: RichEdit Format

  Alt 26. Feb 2013, 14:10
@Ykcim

Ich hab mich mal mit dem Thema näher beschäftigt und kann behaupten, dass es das was du suchst nicht in der Form gibt oder ich es nicht gefunden habe.

Was ich letztendlich gemacht habe und du es auch machen kannst ist Tricksen.

Dein erstes Problem kannst du so lösen:

Delphi-Quellcode:
procedure TForm1.RichEdit1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then Key := #0;
end;
Damit fängst du das Enter an. Wenn du den Zeilenumbruch komplett abfangen willst, also auch den durch Einfügen von Text, dann mußt du auch das abfangen.

Dein zweites Problem ist etwas komplexer, aber auch nicht unmöglich. Nur mußt du dann das machen was du eigentlich mit Delphi machen willst: programmieren. Einfach die Texteingabe überwachen. Bei der ersten Eingabe einer Zahl den Startpunkt merken, dann auch den Endpunkt merken, also die erste Nichtzahl. Schon hast du die letzte Zahl die eingegeben wurde. Jetzt das ganze formatieren und den Cursor anpassen.
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: RichEdit Format

  Alt 26. Feb 2013, 14:24
Zu 2.

Du kannst die Zahl vorher formatieren, und dann in das RichEdit als Text einfügen:
Delphi-Quellcode:
function PointDelimiter(Argument: string; TrennChar: char): string;
var n,i: integer;
begin
  Result := Argument;
  n := Length(Result);
  if n > 3 then begin
    i := 0;
    While n > 0 do begin
      inc(i);
      if (i >= 3) and (n > 1) then begin
        Insert(TrennChar, Result, n);
        i := 0;
      end;
      dec(n);
    end;
  end;
end;


RichEdit1.Text := PointDelimiter('1234567890', '.');

Edit:
Zu 1.:
Du kannst mit stringreplace (http://www.delphibasics.co.uk/RTL.as...=StringReplace) die #13 im gesamten String austauschen gegen zB. ein Leerzeichen. Oder auch gar nichts..
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)

Geändert von lbccaleb (26. Feb 2013 um 14:31 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz