Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Delphi 2007 Komponentenproblem (https://www.delphipraxis.net/117924-delphi-2007-komponentenproblem.html)

Darlo 28. Jul 2008 14:32


Delphi 2007 Komponentenproblem
 
Hallo zusammen,

ich plane gerade den Umstieg von Delphi 5 zu Delphi 2007
(Zeit wirds ja mal :roll: ). Jetzt stehe ich nur vor einem entscheidenden Problem:
Unter Delphi 5 habe ich eine eigene Komponente die ein MaskEdit um die Eigenschaft Allignment erweitert.
Diese Komponente konnte ich unter Delphi 5 einfach mit einer *.dcu Datei registrieren.

Lade ich mir diese Datei in Delphi 2007 rein, habe ich keine Möglichkeit auf compilieren zu drücken....

Kann mir jemand weiterhelfen wie ich die Komponente unter Delphi 2007 registrieren und einbinden kann, oder mir eine
fertige Komponente empfehlen?

Würde mich über Eure Hilfe freuen.

Gruß
Darlo

Fussball-Robby 28. Jul 2008 14:34

Re: Delphi 2007 Komponentenproblem
 
Du musst zuerst ein neues Package erstellen und die Datei da rein laden. Das Package kannst du dann compilieren. Ob die dcu aber in einer anderen Delphi-Version funktioniert, weiß ich nicht. Am besten verwendest du die .pas, falls du diese noch hast.

mkinzler 28. Jul 2008 14:35

Re: Delphi 2007 Komponentenproblem
 
dcus sind versionsspezifisch. Du musst die .pas neu Kompilieren.

Darlo 28. Jul 2008 15:29

Re: Delphi 2007 Komponentenproblem
 
Vielen Dank für die netten und schnellen Antworten.

Stehe nun leider vorm nächsten Problem was das Pakt erzeugen angeht.
Wenn ich in Delphi 2007 auf neues Paket erstellen gehe, und dann die pas dem Projekt hinzufüge,
schreit er immer (höchstwahrscheinlich für viele verständlich), dass er keine Hostanwendung zugewiesen bekommen hat.

Ich poste mal anbei den Code der *.pas. Über zusätzliche Denkansätze freue ich mich.

Danke Darlo.


Delphi-Quellcode:
unit PEdit;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Mask;

type
  TPEdit = class(Tmaskedit)
  private
  { Private-Deklarationen } 
  fAlignment : TAlignment;
  protected
  { Protected-Deklarationen } 
  public
  { Public-Deklarationen } 
  procedure SetAlignment(const Value: TAlignment);
  procedure CreateParams(var Params: TCreateParams);override;
  published
  { Published-Deklarationen } 
  property Alignment : TAlignment read fAlignment write SetAlignment;
end;

procedure Register;

implementation

procedure TPEdit.SetAlignment(const Value: TAlignment);
begin
  if Value <> fAlignment then
  begin
    fAlignment := Value;
    RecreateWnd; // erzeuge Fenster neu -> CreateParams
  end;
end;

procedure TPEdit.CreateParams(var Params: TCreateParams);
const cAlignStyles: array [TAlignment] of Cardinal = (ES_LEFT, ES_RIGHT, ES_CENTER);
begin
  inherited;
  with Params do
    Style := Style or cAlignStyles[fAlignment];//taRightJustify];
end;

procedure Register;
begin
  RegisterComponents('Standard', [TPEdit]);
end;

end.

ralfiii 28. Jul 2008 15:36

Re: Delphi 2007 Komponentenproblem
 
Datei - Neu - Package
Speichere Package als MeinPackage2007.bpl
Rechtsklick auf "Enthält" - Hinzufügen - deine Datei auswählen.
Rechtsklick auf MeinPackage2007.bpl - Installieren.

Fertig.

hth,
Ralf

Fussball-Robby 28. Jul 2008 15:54

Re: Delphi 2007 Komponentenproblem
 
Zitat:

Zitat von Darlo
Wenn ich in Delphi 2007 auf neues Paket erstellen gehe, und dann die pas dem Projekt hinzufüge,schreit er immer (höchstwahrscheinlich für viele verständlich), dass er keine Hostanwendung zugewiesen bekommen hat.

Du darfst auch nicht F9 drücken oder oben in der Leiste auf Run klicken, sondern musst im kleinen Fenster des Packages oben links auf Compile klicken und danach rechts auf Install.

Darlo 28. Jul 2008 20:07

Re: Delphi 2007 Komponentenproblem
 
*EDIT*
Ich glaube es nicht, die ganze Zeit ein reiner Anwenderfehler ;-)
War es nicht gewohn dass mann unter Ansicht die Projektverwaltung anzeigen lassen muss :-)

Frage geklärt. 1000 Dank.

Viele Grüße

Darlo


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz