AGB  ·  Datenschutz  ·  Impressum  







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

multiline-paste im edit feld

Ein Thema von Beckman · begonnen am 20. Jul 2004 · letzter Beitrag vom 29. Jul 2004
Antwort Antwort
Beckman

Registriert seit: 12. Jul 2004
205 Beiträge
 
#1

multiline-paste im edit feld

  Alt 20. Jul 2004, 17:04
ich will mehrere lines ins edit feld posten, die dann hintereinader aufgefangen und verarbeitet werden.


ich habs bei onchange mit
if (pos(#13,edit1.text) > 0) or (pos(#10,edit1.text) > 0) then memo1.lines.add('shout loudly!');
versuhct, dabei wollt ich sehen, ob das so aufgefangen werden kann, aber scheinbar nich


ich wollte naemlich so, wie xchat2 oder mIRC das machen, die zeilenumbrueche in zb #1+#1 umwandeln und die einzelnen sachen nebeneinander reihen.

danachs bei onkeypress #13 eben von #1+#1 zu #1+#1 jeweils kopiert weiter basteln



hat sowas schon jemand gemacht?

weil google spuckt nich wirklich aus, wie man diese zeilenumbrueche auffangen koennte.


thanks
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

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

Re: multiline-paste im edit feld

  Alt 29. Jul 2004, 08:20
Hi!

Wenn ich dich richtig verstanden habe, dann so:

Delphi-Quellcode:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then Edit1.Text:=Edit1.Text+'#1+#1';
end;
Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: multiline-paste im edit feld

  Alt 29. Jul 2004, 15:01
Er meint bestimmt:

Delphi-Quellcode:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  i:integer;
  s:string;
begin
if key=13 then begin
  if GetAsyncKeyState(VK_RCONTROL)<>0 then begin
    Edit1.Text:=Edit1.Text+#1;
  end
  else begin
    s:=Edit1.Text;
    while pos(#1,s)>0 do begin
      i:=pos(#1,s);
      Memo1.Lines.Add(Copy(s,1,i-1));
      Delete(s,1,i);
    end;
    if Length(s)>0 then Memo1.Lines.Add(s);
  end;
end;
end;
Mit STRG+Enter machst du eine "neue zeile" und mit Enter liest du die einzelnen zeilen.
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: multiline-paste im edit feld

  Alt 29. Jul 2004, 15:03
Als Zusatzinfo: Ein Edit hat nur eine Zeile. In sofern glaube ich, dass das alles nicht funktieren wird. Man könnte überlegen, ob man ein Memo nimmt und das die Höhe einer Zeile gibst und das Scrollen unterbindet.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Beckman

Registriert seit: 12. Jul 2004
205 Beiträge
 
#5

Re: multiline-paste im edit feld

  Alt 29. Jul 2004, 18:27
ich muss jetzt rechner zampacken und auf ne lan. ich schau dann spaeter dein code genauer an.

ich hab das ganze jetzt mit nem richedit feld geloest


ich habs manuell getrennt zwischen strg+enter und enter und auf drei zeilen limitiert

aber jetzt faellt mir gerade auf, strg+enter ist schon ne vorgemachte funktion und auch wenn man '~accept-return' auf false setzt, funkt das strg+enter fuer newline.
das macht mir bisschen probs.
eventuell weiss jemand nen weg, wie ich das auch unterbinde, damit ich das manuell parsen kann. ich schau dann auf der lan weiter.


thansk mal soweit.
  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 09:35 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