![]() |
Probleme mit neuer Komponente
Hallo,
ich möchte die folgende Komponente erstellen:
Delphi-Quellcode:
Leider taucht ein nicht genauer spezifizierter Fehler auf.
unit akQuery;
interface uses SysUtils, Classes, DB, mySQLDbTables; type akQuery = class(TmySQLQuery) private { Private declarations } protected { Protected declarations } public { Public declarations } constructor Create(AOwner: TComponent; Database: TmySQLDatabase); published { Published declarations } end; procedure Register; implementation procedure Register; begin RegisterComponents('Samples', [akQuery]); end; { akQuery } constructor akQuery.Create(AOwner: TComponent; Database: TmySQLDatabase); begin inherited Create(AOwner); self.Database:= Database; end; end. Kann jemand helfen? |
Re: Probleme mit neuer Komponente
Konstruktoren von Komponenten müssen einen festen Aufbau haben. Wenn Du einen im Code nutzen willst, dann kannst Du eine 2. Variante anbeiten:
Delphi-Quellcode:
...:cat:...
unit akQuery;
interface uses SysUtils, Classes, DB, mySQLDbTables; type akQuery = class(TmySQLQuery) private { Private declarations } protected { Protected declarations } public { Public declarations } constructor Create(AOwner: TComponent); override; // oder komplett weglassen constructor CreateDb(AOwner: TComponent; Database: TmySQLDatabase); published { Published declarations } end; procedure Register; implementation procedure Register; begin RegisterComponents('Samples', [akQuery]); end; { akQuery } constructor akQuery.Create(AOwner: TComponent); begin inherited Create(AOwner); end; constructor akQuery.CreateDb(AOwner: TComponent; Database: TmySQLDatabase); begin Create(AOwner); self.Database:= Database; end; end. |
Re: Probleme mit neuer Komponente
Hallo Sakura,
leider immer noch nicht. Beim Einbinden der Unit kommt diese Fehlermeldung:
Delphi-Quellcode:
[Fatal Error] Unit1.pas(7): Could not compile used unit 'akQuery.pas'
|
Re: Probleme mit neuer Komponente
Erstelle mal ein neues Projekt und füge die Unit (SHIFT+F11) hinzu. Dann solltest Du eine genauere Fehlermeldung erhalten.
...:cat:... |
Re: Probleme mit neuer Komponente
Hallo Sakura,
Delphi-Quellcode:
Habe ich geändert. Danke Dir. Jetzt scheints zu klappen!
akQuery = class(TmySQLQuery) // [Error] akQuery.pas(9): Identifier redeclared: 'akQuery'
|
Re: Probleme mit neuer Komponente
*g* Ja, Du hattest den Namen der Klasse, gleich dem der Query. Btw, alle Klassennamen in Delphi sollten mit einem T beginnen - ist einfach gängig und Teil der unverbindlichen und doch oft verbindlichen Code-Style-Guidelines ;)
...:cat:... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 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