Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#11

Re: TEdit Text "überschreiben"

  Alt 21. Jun 2005, 21:47
wie ich bereits schrieb: Du bräuchtest nur Change überschreiben.

Ein abstrakter Bleistift würde so aussehen:
Delphi-Quellcode:
uses
   StdCtrls;

type
   TCelsiusEdit = class(TEdit)
   protected
      procedure Change; override;
   end;

implementation

uses
   StrUtils,
   SysUtils;

{ TCelsiusEdit }

procedure TCelsiusEdit.Change;
var
   TrimmedText :string;
   Dummy :double;
   IsNumeric, EndsWithCelcius :Boolean;
begin
   TrimmedText := Trim(Text);
   IsNumeric := TryStrToFloat(TrimmedText,Dummy);
   EndsWithCelcius := (RightStr(TrimmedText, 2) = '°C');

   if IsNumeric and not EndsWithCelcius then
      inherited Text := TrimmedText + ' °C'
   else
     inherited;

end;
Der Code ist /nicht/ gedacht um direkt übernommen zu werden! Nur um dir das Prinzip zu zeigen.
  Mit Zitat antworten Zitat