Nein, das ist ok, es sagt nur, wie die betreffende Unit kompiliert werden soll.
Kannst du nochmals die aktuellen Sourcen hochladen? Und: Welche Lazarus-Version/fpc-Version hast du?
Kann LCLIntf nicht finden
Re: Kann LCLIntf nicht finden
Salü
Ich habe Lazarus 1.6.4 und fpc 3.0.2
Hier nochmals die Sourcen
Bin gespannt was los ist und Gruss
Uli
Ich habe Lazarus 1.6.4 und fpc 3.0.2
Hier nochmals die Sourcen
Bin gespannt was los ist und Gruss
Uli
Re: Kann LCLIntf nicht finden
FloatEdit.pas hat gefehlt, ich habe es aus der ersten Version rüberkopiert. Dann das Package neu "Kompilieren", dann "Nutzung" / "Installieren" (ich mache das immer in zwei Schritten, vielleicht geht's auch nur mit Installieren) --> Die Komponenten sind da. Getestet mit Laz Trunk und auch mit 1.6.4. Sind aber nicht am Ende der Komponenten-Palette, sondern mitten drin - vielleicht ist das das Problem. Wenn du sie gefunden hast, kannst du die Reihenfolge ändern mit Rechtsklick auf der Komponenten-Palette--> "Einstellungen" --> "Komponentenpalette anzeigen"
Wenn du die Icons ins .res-Dateien einbindest, kannst du auf den eigenen initialization-Abschnitt verzichten und das {$R direkt hinter "implementation" schreiben. Um die Registrierung mehrer Komponenten kann man auch in denselben Aufruf schreiben. Hier als Beispiel aus TLine.pas:
Dass in RegisterCompoents jeweils explizit 'Beispiele' steht, halte ich für ungeschickt: Wenn du die Komponenten einmal anderswo unterbringen willst, musst du diverse Units öffnen und den String ändern. Besser: eine Deklarationsunit schreiben, in der alle von den einzelnen Komponenten benötigten allgemeinen Deklarationen (Typen, Konstanten etc) stehen, darunter auch
Wenn du die Icons ins .res-Dateien einbindest, kannst du auf den eigenen initialization-Abschnitt verzichten und das {$R direkt hinter "implementation" schreiben. Um die Registrierung mehrer Komponenten kann man auch in denselben Aufruf schreiben. Hier als Beispiel aus TLine.pas:
Code: Alles auswählen
procedure Register;
implementation
{$R TXLinie.res }
{$R TDreieck.res }
{$R TSchalter.res }
{$R TUmschalter.res }
procedure Register;
begin
RegisterComponents('Beispiele', [TXLinie, TDreieck, TSchalter, TUmschalter]);
{ statt:
RegisterComponents('Beispiele', [TXLinie]);
RegisterComponents('Beispiele', [TDreieck]);
RegisterComponents('Beispiele', [TSchalter]);
RegisterComponents('Beispiele', [TUmschalter]);
}
end;
Dass in RegisterCompoents jeweils explizit 'Beispiele' steht, halte ich für ungeschickt: Wenn du die Komponenten einmal anderswo unterbringen willst, musst du diverse Units öffnen und den String ändern. Besser: eine Deklarationsunit schreiben, in der alle von den einzelnen Komponenten benötigten allgemeinen Deklarationen (Typen, Konstanten etc) stehen, darunter auch
Code: Alles auswählen
const
PalettenName = 'Beispiele'; [/const]
und obiger Code würde damit zu
[code=laz]procedure Register;
implementation
uses
mkCommon; // "Meine Komponenten - gemeinesame Unit"
{$R TXLinie.res }
{$R TDreieck.res }
{$R TSchalter.res }
{$R TUmschalter.res }
procedure Register;
begin
RegisterComponents(PalettenName, [TXLinie, TDreieck, TSchalter, TUmschalter]);
end;
Re: Kann LCLIntf nicht finden
Salü
Danke nochmals für deine Ratschläge. Ich habe eigentlich alles so gemacht, alles ging ohne Fehlermeldungen, die Komponenten waren nicht da!!
Aus lauter Verzweiflung habe mal eine Komponente in eine andere Palette registriert. (Die Uhr in die Palette 5dop mit der Serieschnittstelle drin).
Und was sehe ich? Die Uhr ist schön brav in der 5dop-Palette und funktioniert sogar, wenn ich sie in ein Form hole. Warum, wissen die Götter, oder auch diese nicht. Ich habe dann alle Komponenten in 5dop registriert und sie dann von Hand (Rechtsklick Palette, Einstellungen) in die Palette Beispiele gezogen, alles paletti.
Danke für deine immer sehr schnellen und guten Antworten.
Gruss
Uli
[img]D:\Projekte\LazarusProjekte\MeineKomponenten\Komponenten.jpg[/img]
Danke nochmals für deine Ratschläge. Ich habe eigentlich alles so gemacht, alles ging ohne Fehlermeldungen, die Komponenten waren nicht da!!
Aus lauter Verzweiflung habe mal eine Komponente in eine andere Palette registriert. (Die Uhr in die Palette 5dop mit der Serieschnittstelle drin).
Und was sehe ich? Die Uhr ist schön brav in der 5dop-Palette und funktioniert sogar, wenn ich sie in ein Form hole. Warum, wissen die Götter, oder auch diese nicht. Ich habe dann alle Komponenten in 5dop registriert und sie dann von Hand (Rechtsklick Palette, Einstellungen) in die Palette Beispiele gezogen, alles paletti.
Danke für deine immer sehr schnellen und guten Antworten.
Gruss
Uli
[img]D:\Projekte\LazarusProjekte\MeineKomponenten\Komponenten.jpg[/img]
Re: Kann LCLIntf nicht finden
Vielleicht hast du das Panel schon früher mal erzeugt? Ich weiß, mit dem Paletten-Editor gab es mal Probleme. Versuche mal "Vorgaben wiederherstellen". Oder benenne kurz dein Lazarus-Benutzer-Profil um (steht normalerweise in c:\Users\<benutzername>\AppData\Local\Lazarus oder in dem Order, der in lazarus.cfg (im selben Ordner wie lazarus.exe) genannt ist). Beim nächsten Stert von Lazarus wird ein neues Default-Profil geschrieben. Wenn du nun deine Komponenten neu installierst, sollte sei auf der Seite "Beispiele" erscheinen.
Re: Kann LCLIntf nicht finden
Salü
Das mit den Vorgaben wiederherstellen hat auch nicht funktioniert. Ich lass das mal so. Wenn ich mal Lust habe, deinstalliere ich Lazarus und installiere es neu und probiere alles nochmals.
Besten Dank und Gruss
Uli
Das mit den Vorgaben wiederherstellen hat auch nicht funktioniert. Ich lass das mal so. Wenn ich mal Lust habe, deinstalliere ich Lazarus und installiere es neu und probiere alles nochmals.
Besten Dank und Gruss
Uli