Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi lezten beiden strings im edit löschen (https://www.delphipraxis.net/5805-lezten-beiden-strings-im-edit-loeschen.html)

aaron 19. Jun 2003 17:06


lezten beiden strings im edit löschen
 
wie kriege ich die letzten beiden strings im edit gelöscht:
das wäre aber nur am ende zuviel
Delphi-Quellcode:
&#
Delphi-Quellcode:
var
   i: integer;
   s1,s2: string;
begin
   s1:=Edit1.Text;
   s2:='&#';
   for i:=1 to Length(s1) do
      s2:=s2+Format('%d',[Ord(s1[i])])+';&#';
    edit1.Text:=s2;
end;

Christian Seehase 19. Jun 2003 17:09

Moin Aaron,

übergeb' s2 doch mit copy an Edit.Text.

Stanlay Hanks 19. Jun 2003 17:10

Delphi-Quellcode:
Edit1.Text := Copy(Edit1.Text,1,Length(Edit1.Text)-2);
Müsste funzen.

aaron 19. Jun 2003 17:18

DANKE...das ist es ;)

Christian Seehase 19. Jun 2003 20:06

Moin Zusammen,

ich würd's nur nicht so lösen

Delphi-Quellcode:
Edit1.Text := Copy(Edit1.Text,1,Length(Edit1.Text)-2);
sondern so:

Delphi-Quellcode:
Edit1.Text := Copy(s2,1,Length(Edit1.Text)-2);
Das Ergebnis ist zwar das gleiche, aber man gewöhnt sich nicht an mit der Eigenschaft Text zu arbeiten. Bei einem Edit spielt das zwar keine grosse Rolle, bei einem Memo kann das aber schon recht performancefressend werden.

[TP]Hawk274 19. Jun 2003 20:26

Zitat:

Das Ergebnis ist zwar das gleiche, aber man gewöhnt sich nicht an mit der Eigenschaft Text zu arbeiten. Bei einem Edit spielt das zwar keine grosse Rolle, bei einem Memo kann das aber schon recht performancefressend werden.
Kannst du das bitte mal begründen!? thx

aaron 19. Jun 2003 20:29

...würde ich gerne auch verstehen
was meinst du mit
Zitat:

aber man gewöhnt sich nicht an mit der Eigenschaft Text zu arbeiten
grüße und besten dank für die hilfe...

Stanlay Hanks 19. Jun 2003 21:27

Das mit der "Eigenschaft Text" verstehe ich auch nicht ganz. In deinem Code verwendest du ja auch die Text Eigenschaft, oder?

Man liest sich, Stanlay

Christian Seehase 19. Jun 2003 21:34

Moin Zusammen,

kann ich begründen:

Bei einem Memo wird die Eigenschaft Text bei jeder Verwendung aus den einzelnen Zeilen generiert.
Je sparsamer man also mit dieser Eigenschaft umgeht, desto besser.
Sollten mal aufwändigere Operationen mit dem Gesamtinhalt eines Memos angestellt werden müssen, ist es besser die Eigenschaft Text einmal in eine Stringvariable einzulesen, und erst zum Schluss wieder zurückzuschreiben.

Wie gesagt, bei einem Edit nicht weiter schlimm (in diesem Falle spart man sich halt eine, unnötige, Zuweisung), aber bei mehrzeiligen Controls kann das schon merkliche Geschwindigkeitseinbussen mit sich bringen.

aaron 19. Jun 2003 22:34

Aha!


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 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