Announcement

Collapse
No announcement yet.

RICHED20.DLL - Zoom in - TRichEdit

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • RICHED20.DLL - Zoom in - TRichEdit

    Hallo,

    D5 Sp1 / W98SE mit
    RICHED20.DLL
    Dateiversion: 5.30.23.1200
    Beschreibung: Rich Text Edit Control, v3.0

    Ich möchte in einem TRichEdit mittells der gennanten dll die Möglichkeit nutzen zu zoomen.

    Hat jemand eine Idee wieso der folgende Code nicht Funktioniert? (Es wird zwar ein RTF Edit angezeigt, jedoch wird der Text nicht vergrößert.)

    Vielen Dank schon mal.

    mfg
    PS

    <pre>
    type
    TfxDBRichEdit = class(TRichEdit)
    protected
    procedure CreateParams(var Params: TCreateParams); override;
    public
    end;

    TForm1 = class(TForm)
    Panel1: TPanel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    private
    { Private-Deklarationen }
    public
    { Public-Deklarationen }
    fxEditor : TfxDBRichEdit;
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.DFM}

    var
    FRichEditModule: THandle;

    procedure TfxDBRichEdit.CreateParams(var Params : TCreateParams);
    const
    RichEditModuleName = 'C:\WINDOWS\SYSTEM\Riched20.dll';
    begin
    if FRichEditModule = 0 then begin
    FRichEditModule:=LoadLibrary('RICHED20.DLL');
    if FRichEditModule<=HINSTANCE_ERROR then FRichEditModule:=0;
    end;
    inherited CreateParams(Params);
    CreateSubClass(Params, 'RICHEDIT_CLASS');
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    fxEditor := TfxDBRichEdit.Create(Self);
    fxEditor.Parent := Self;
    fxEditor.Align := alClient;
    SendMessage( fxEditor.Handle, {EM_SETZOOM} WM_USER + 225, wparam(3) , lparam(1));
    end;

    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    if FRichEditModule<>0 then FreeLibrary(FRichEditModule);
    end;

    end.
    </pre>

  • #2
    Hi,
    <br>
    <br>habe RICHED20.DLL und Riched32.dll aus win xp nach win 98 kopiert.
    <br>
    <br>Jetzt funktioniert es sogar für TRichEdit.
    <br>Riched32.dll von xp scheint ein wraper zu sein.
    <br>
    <br>Die Frage ist nur wie lange geht das gut?
    <br>
    <br>Ich habe auch verschiedenste Ansätze im Netz mir mal angeschaut und alle verfahren wie oben.
    <br>
    <br>Wenn jemand noch eine Idee hat wieso das mit dem Loadllibary nicht funktioniert wäre ich sehr dankbar dafür.
    <br>
    <br>mfg
    <br>P

    Comment

    Working...
    X