![]() |
TControl (TEdit...) ?
hallo,
ich habe schon viel recherchiert aber ich nicht clever geworden. uzw. ich möchte die zahlen bei TEdit recht haben. Ich habe erstmal folgende Methode angewendet:
Delphi-Quellcode:
es sollte mit Delphi7 funktionieren
MyEdit.BiDiMode := bdLeftToRight;
Passiert nicht und dann habe ich folgende quelle gefunden:
Delphi-Quellcode:
aber ich weisse nicht wie ich es implementieren kann. kennt jemand ne einfache Methode?
type
TMonEdit = class(TEdit) private FTextAlign: TAlignment; procedure SetTextAlign(Value: TAlignment); protected procedure CreateParams(var Params: TCreateParams); override; public constructor Create(AOwner: TComponent); override; published property TextAlignment: TAlignment read FTextAlign write SetTextAlign; end; implementation constructor TMonEdit.Create(AOwner: TComponent); begin inherited; FTextAlign := taLeftJustify; end; procedure TMonEdit.CreateParams(var Params: TCreateParams); const Alignments: array[TAlignment] of Word = (ES_LEFT, ES_RIGHT, ES_CENTER); begin inherited CreateParams(Params); Params.Style := Params.Style or Alignments[TextAlignment]; end; procedure TMonEdit.SetTextAlign(Value: TAlignment); begin if FTextAlign <>Value then Begin FTextAlign := Value; RecreateWnd; End; end; grüß poter |
Re: TControl (TEdit...) ?
Hmmmm, also hast Du die Komponente schon in der Tool-Palette? Wenn Du diese in der Form plazierst, müsste im OI eine Eigenschaft "TextAlignment" stehen. Hier kannst Du dann das entsprechende auswählen.
Im Quellcode müsste folgendes gehen:
Delphi-Quellcode:
Habe auch mal eine eigene Edit-Komponente abgeleitet. Habe Dir mal das wichtigste rauskopiert, hoffe diese lässt sich compilieren und in die Tool-Palette integrieren... Ist Deinem Beispiel nach dem kürzen sehr ähnlich.
MonEdit.TextAlignment := taRightJustify;
Delphi-Quellcode:
Viel Spaß,
unit AdvEdit;
interface uses SysUtils, Classes, Controls, StdCtrls, Graphics, Messages, Windows, Forms; type TAdvEdit = class(TEdit) private { Private-Deklarationen } FAlignment : TAlignment; procedure SetAlignment(const Value: TAlignment); protected procedure CreateParams(var Params: TCreateParams); override; public { Public-Deklarationen } constructor Create(AOwner : TComponent); override; published { Published-Deklarationen } property Alignment : TAlignment read FAlignment write SetAlignment; end; procedure Register; implementation constructor TAdvEdit.Create(AOwner : TComponent); Begin inherited Create(AOwner); Alignment := taLeftJustify; End; procedure TAdvEdit.CreateParams(var Params: TCreateParams); const Alignments: array[TAlignment] of DWORD = (ES_LEFT, ES_RIGHT, ES_CENTER); begin inherited CreateParams(Params); with Params do Style := Style or Alignments[FAlignment]; end; procedure TAdvEdit.SetAlignment(const Value: TAlignment); begin if FAlignment <> Value then begin FAlignment := Value; RecreateWnd; end; end; (*SetAlignment*) procedure Register; begin RegisterComponents('Michael Kübler', [TAdvEdit]); end; end. Michael |
Re: TControl (TEdit...) ?
danke ich probiere es
poter |
Re: TControl (TEdit...) ?
funktioniert leider nicht
|
Re: TControl (TEdit...) ?
Zitat:
|
Re: TControl (TEdit...) ?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz