Einzelnen Beitrag anzeigen

Explorer

Registriert seit: 10. Aug 2006
Ort: im Rhein-Main-Gebiet
21 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

Grosse Probleme mit delphi-dll.

  Alt 10. Aug 2006, 09:39
Hallo Forum,
ich habe eine kleine dll geschrieben, die ein InfoFenster mit einem Panel öffnet.
Nun möchte ich die Breite dieses Panels bei geöffnetem InfoFenster verändern, bekomme dies aber partout nicht hin.
Wie aktualisiere ich das Panel im InfoFenster, ohne das bestehende Fenster schließen und neu aufbauen zu müssen.

Im voraus Dank für die Mühe.

Gruß

Karlheinz


Quelltext:
----------


Delphi-Quellcode:
unit dll_mit_Fenster;

interface

uses
  ShareMem, inifiles, Windows, Messages, SysUtils, Variants, Classes, Graphics,
  Controls, Forms, Dialogs, IdComponent, IdTCPConnection, IdTCPClient,
  IdMessageClient, IdSMTP, ComCtrls, StdCtrls, Buttons, ExtCtrls,
  IdBaseComponent, IdMessage;

type
  TKischAlles = class(TComponent)
  KischFenster : TForm;
  KischPanel : TPanel;

  constructor Create(AOwner: TComponent); override;
  destructor Destroy; override;

  Procedure ErstelleFenster(PanelBreite: Integer);

  private
  public { Public declarations }

  end;


///*** die DLL-Deklarationen
function ZeigeFenster(const PanelBreite :Integer) : Integer; stdcall; export;


implementation



constructor TKischAlles.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
 KischFenster := TForm.Create(nil);
 KischPanel := Tpanel.Create(nil);
 end;


destructor TKischAlles.Destroy;
begin
 KischFenster.Free;
 KischPanel.Free;
 inherited Destroy;
end;


Procedure TKischAlles.ErstelleFenster(PanelBreite: Integer);
begin
 KischFenster.Top := 200;
 KischFenster.Left := 200;
 KischFenster.Height := 300;
 KischFenster.Width := 500;
 KischFenster.Caption := 'Jippi-ey-hey.';

 KischPanel.Parent := KischFenster;

 KischPanel.Top := 100;
 KischPanel.Left := 100;
 KischPanel.Height := 20;
 KischPanel.Width := PanelBreite;
 KischPanel.Caption := '0,0 % Fett';
 KischFenster.Show;
end;


///*** die DLL-Definitionen
function ZeigeFenster(const PanelBreite :Integer) : Integer; stdcall; export;
var
KischAlles : TKischAlles;
begin
 KischAlles := TKischAlles.Create(nil);
 KischAlles.ErstelleFenster(Panelbreite);
 Result := 0;
end;



end.
[edit=Jelly]Delphi Tags ergänzt... Mfg, Jelly[/edit]
  Mit Zitat antworten Zitat