hej ;)
Podaje Ci CHŁOPSKĄ ;) wskazówkę jak poradzić sobie w przypadku błędów występujących podczas instalacji komponentu:
Pliki o rozszerzeniu *.dcu stanowią odpowiednik pascalowskich bibliotek *.tpu
Powstały w wyniku kompilacji plików źródłowych *.pas
Pliki te należy umieszczać w katalogu Delphi\Lib , ewentualnie można je pozostawić w katalogu naszego programu.
Wywołanie plików *.dcu jako bibliotek następuje poprzez wpis nazwy biblioteki do linii "Uses" naszego programu.
I uwaga:
Przy takim sposobie korzystania z unitów które pierwotnie przeznaczone były do kompilacji jako całościowy komponent wyświetlany na zakładce Delphi , pobierany myszką na formę - należy wywoływać dany komponent korzystając z komend "Create".
PRZYKŁAD 1: (TSynEdit - najczęstsze kłopoty)
var
Edytor :TSynEdit;
PROCEDURE KreujEdytor(Component :TComponent);
var
wskaznik :TWinControl; //zmienna wskaźnikowa
Begin
//wykreowanie nowego objektu (Edytora) na panelu...
wskaznik:=TWinControl(Component); //wskazanie objektu na którym wyświetlać
Edytor:=TSynEdit.Creat(wskaznik); //wykreowanie
Edytor.Parent:=wskaznik; //wyświetlenie
//itd , znaczy dalsze parametry...
End;
delphi>
PRZYKŁAD 2 (Twój gifek)
<delphi>
PROCEDURE LoadGIF(objekt:TWinControl; nazwaGifa:String);
var
rys :TGIFimage;
Begin
rys:= TGIFimage.Create(objekt); //wykreowanie zmiennej dla gifa
with rys do
begin
LoadFromResourceName(HINSTANCE,nazwaGifa); //wczytuje gifa z zasobów
Parent:= objekt; //wskazuje na jakim komponencie wyświetlać gifa
Align:= alClient; //rozmieszcza gifa na na całości komponentu
end;
End;
PS. Działa na 100% jedynie mogą być przypadki kiedy to w pakiecie
instalacyjnym komponetu brak pliku *pas (source) i przy kompilacji
programu inną wersją Delphi niż taką którą był kompilowany komponent - będziesz miał odwołanie do *pas :-(