Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: größe der Komponente automatisch anpassen

  Alt 11. Mai 2009, 16:04
Zitat von oki:
Joop, geht doch gut vorwärts. Die Methode TTWinControlAnpassung würde ich ändern in ChangeEmbeddedEdit oder UpdateEditSize oder so. Ist zwar völlig wurscht, aber das Auge isst mit.

Eigenschaften für published ? ... nehm doch mal alle. Kenne eingentlich keine unnützen da.

Gruß oki
Hmm ok hier erstmal das einfache, die Properties, die ich bisher identifiziert habe, die nützlich sind:
- Enabled
- Text
- Font(hier als Unterpunkte Color, Height, Name, Style)
- Visible
- eventuell Readonly (Wobei ich hier noch überlege, dann könnte man gleich einfach ein Label nehmen)
- Length
- MaxLength

Jetzt zu dem etwas schwierigeren Sachen, die ich auch teilweise noch nicht verstanden habe.

Zitat von oki:
Den alten Wert brauchst des Label brauchst du dir so eigentlich nicht merken. Der Wert als Solches reicht Vollständig.
Hmm das verstehe ich so, dass ich meinen Quellcode etwa so abändern müsste:
Delphi-Quellcode:
procedure TLabEdit.FEdKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
// Die Änderung hier an dieser Prozedur sehen wie folgt aus: OnChange wird nur
// aktiviert, wenn eine Eingabe getätigt wurde, die verschieden von der vorherigen
// ist.
// Bei Esc wird alles wieder zurückgesetzt und das OnChangeEvent wird nicht aktiviert.
  if (Key = 13) then
    begin
      FEdEingabe.Visible := false;
      FLblAnzeige.Visible := true;
      FLblAnzeige.Caption := FEdEingabe.Text;
      if assigned(FOnChange) then FOnchange;
      ChangeEmbeddedEdit;
    end;
  if (key = 27) then
    begin
      FEdEingabe.Visible := false;
      FLblAnzeige.Visible := true;
      FEdEingabe.Text := sTextWert;
       ChangeEmbeddedEdit;
    end;
end;
Sollte ich, wenn ich die Prozedure so umschreibe immer noch ein Flag setzen? hab das mal so getestet und scheint erstmal wunderbar zu funktionieren.

Setter und Getter schreibe ich gerade direkt in die Komponente. Denke einen zusätzlichen TPresistent zu schreiben wäre aufwendiger. Vorallem wüsste ich da nur schwer, wie ich die Setter und Getter schreiben müsste. So erstelle ich mir eine Variable und dazu jeweils einen Setter und Getter plus einer Property in Published wo ich die Eigenschaft frei gebe.
2. Account Sero
  Mit Zitat antworten Zitat