AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi » Letzte Zeile eines Memofeldes löschen
Thema durchsuchen
Ansicht
Themen-Optionen

» Letzte Zeile eines Memofeldes löschen

Ein Thema von Pseudemys Nelsoni · begonnen am 17. Feb 2003 · letzter Beitrag vom 3. Dez 2003
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#11
  Alt 17. Feb 2003, 09:46
bei mir fügt das 1 neue zeile in die memobox und bei form1 caption wird immer um 1 erhöht hehe

ist der code ganz kopiert oder fehlt da ein teil?

btw hat "<-" einen "#..." wert? bzw welchen?

gruss und danke früs testen =)
Mario
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#12
  Alt 17. Feb 2003, 09:48
Zitat von janjan:
hm, scheinbar erkennt Delphi die letzte leere Zeile nicht als vollwertige Zeile an.
Das liegt nicht an Delphi Das Memo basiert auf einer Standard-Windows-Komponente. An die letzte Zeile wird immer automatisch ein Zeilenumbruch gesetzt, von daher besteht wohl die einzige Möglichkeit, nach dem setzen des Textes, darin, diesen manuell (via VK_BACK Nachricht) wieder zu löschen. Code dazu wurde ja bereits gepostet.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#13
  Alt 17. Feb 2003, 09:49
Mit '<-' meinte ich die Taste auf der Tastatur die diesen Pfeil nach links hat
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#14
  Alt 17. Feb 2003, 10:21
jo aber man muss die taste jairgendwie benutzen können, also ohne tastatur^^

btw:

hatte das nun so

Delphi-Quellcode:
procedure TForm1.IdIRC1Message(Sender: TObject; AUser: TIdIRCUser;
  AChannel: TIdIRCChannel; Content: String);
begin
memo1.Lines.Add('[' + auser.Nick + '] ' + content);
PostMessage(Memo1.Handle, WM_KEYDOWN, VK_BACK, 0 );
end;
aber die zeile ist nachwievor da
Mario
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#15
  Alt 17. Feb 2003, 10:25
Zitat von janjan:
Meine Lösung (recht provisorisch, es sollte besseres geben):

1: Füge eine Zeile zu einem leeren Memo Feld hinzu

2: Einmal das hier ausführen:PostMessage(Memo1.Handle, WM_KEYDOWN, VK_BACK, 0 ); 3: Jetzt sollte jedes weitere Memo1.Lines.Add() normal verlaufen
Mach es mal genauso wie es oben steht, nimm ein leeres Memo, füge etwas per Memo1.Lines.Add() hinzu und führe einmal PostMessage(Memo1.Handle, WM_KEYDOWN, VK_BACK, 0 ); aus.

Wenn du danach Zeilen per Memo1.Lines.Add() hinzufügst sollte die leere Zeile nicht mehr auftreten.

Bei mir klappt das so, ich hab hier Delphi 7 auf Win XP laufen.
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#16
  Alt 17. Feb 2003, 10:27
Und jetzt noch als Programm:

nimm einen Button und ein Memo Feld


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
memo1.Text:='';
memo1.Lines.Add('Hallo');
PostMessage(Memo1.Handle, WM_KEYDOWN, VK_BACK, 0 );
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Lines.Add('test')
end;

end.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#17
  Alt 17. Feb 2003, 11:05
stimmt, wenn ich ein neues project mache mit den 2 komponenten gehts....bei meinen prog funzt das nicht, kannst daran liegen das

BorderStyle BsNone ist??
Mario
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#18
  Alt 17. Feb 2003, 12:19
So, ich glaub ich habs:

Delphi-Quellcode:
memo1.SelStart:=length(memo1.Text);
PostMessage(Memo1.Handle, WM_KEYDOWN, VK_BACK, 0 );
Für das einmal irgendwann aus, das sollte reichen.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#19
  Alt 17. Feb 2003, 12:33
jo klappt, danke
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#20
  Alt 17. Feb 2003, 18:04
komisch in meinem projext funzte es nict, nichtmal wenn ich neues memo einfüg und damit teste, was ist das bloss :\
sieht doof aus wenn beim chat eine zeile leer ist
Mario
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 07:41 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