AGB  ·  Datenschutz  ·  Impressum  







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

memo und Zeilenanfangstring

Ein Thema von richard_boderich · begonnen am 14. Jul 2005 · letzter Beitrag vom 14. Jul 2005
Antwort Antwort
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#1

memo und Zeilenanfangstring

  Alt 14. Jul 2005, 12:55
hallo leute,

ich brauch mal eure hilfe. ich versuche in einem memo so eine art zeilenindexstring für die einzelnen Lines einzufügen
komme aber einfach nicht klar damit. habe folgenden code benutzt. ich will das so haben, das wenn ich return druecke
er in die naechste zeile springt, und den INDX string hinschreibt, so das ich dann direkt dahinter meine werte setzen kann.
ich habe aber das problem, das er erst den wert schreibt, und dann in die naechste zeile springt,egal was ich auch versuche.
habs auch schon im onkeydown event probiert und mit lines.add , alles ohne erfolg. waere dankbar für einen tip.

Delphi-Quellcode:
procedure TForm1.memo8KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then memo8.lines[memo8.lines.count]:='[INDX]';
end;
Gruß Richard

//EDIT was mir noch aufgefallen ist, er tut den INDX string nur schreiben,wenn ich nix weiter in der vorherigen zeile eingetippt hab,
ansonsten schreibt er gar nix *ratlos*
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
marabu

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

Re: memo und Zeilenanfangstring

  Alt 14. Jul 2005, 13:13
Hallo Richard,

das müsste eigentlich ungefähr so ablaufen - noch nicht ganz ausformuliert:

Delphi-Quellcode:
procedure TDemoForm.MemoKeyPress(Sender: TObject; var Key: Char);
const
  LinePrefix = '[INDX]';
var
  lineIndex: integer;
begin
  if key = #13 then begin
    // damit es nicht nur am Ende klappt...
    lineIndex := Succ(CurrentLineNumber);
    // Kons-Tante einsetzen
    Memo.Lines.Insert(lineIndex, LinePrefix);
    // Eingabe-Cursor dahinter setzen
    SetCaretPosition(lineIndex, Length(LinePrefix));
    // Tasten-Code als bearbeitet kennzeichnen
    key := #0;
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3

Re: memo und Zeilenanfangstring

  Alt 14. Jul 2005, 13:17
Da fallen mir zwei Möglichkeiten ein, das Ganze gleich richtig zu erledigen. 1. Memo auf Listbox/Stringgrid umstellen. 2. Memo um die Eigenschaft Count selbst erweitern. Das mitgelieferte Memo ist eben meist einfach zu schwach.

Ah, "roter Kasten" Das Insert fügt aber doch eine komplette Zeile ein, oder nicht ?
Gruß
Hansa
  Mit Zitat antworten Zitat
marabu

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

Re: memo und Zeilenanfangstring

  Alt 14. Jul 2005, 13:32
Oder so:

Delphi-Quellcode:
procedure TDemoForm.MemoKeyPress(Sender: TObject; var Key: Char);
const
  LinePrefix = '[INDX]';
begin
  if key = #13 then begin
    Memo.SelText := #13#10 + LinePrefix;
    Memo.SelStart := Memo.SelStart + Memo.SelLength;
    key := #0;
  end;
end;
marabu

@Hansa: Ja. Wo ist dein Code? *LässigFingerAufTischkanteAbrolle*
  Mit Zitat antworten Zitat
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#5

Re: memo und Zeilenanfangstring

  Alt 14. Jul 2005, 13:38
@marabu

super du , many THX

deine zweite loesung funktioniert so wie ich das haben wollte. die erste ging bei mir leider nich, weil er mit setcarretpos
irgentwas hatte. da hatt er immer gesagt undefinierter bezeichner. naja das nur der vollstaendigkeit halber

Ich danke dir, hab naehmlich n bisschen die zeit im nacken
bei gelegheit trinken wir ma einen

bis denn,

Richard
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: memo und Zeilenanfangstring

  Alt 14. Jul 2005, 13:43
Wenn du die Frage noch bitte als "erledigt" kennzeichnen würdest, wäre das super, danke.
  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 11:22 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