Problem z Register

0

Podczas pisania procedury 'registercomponents' przy tworzeniu komponentu wyskakuje mi błąd. Linijka procedury wygląda tak:

RegisterComponents('Win32', [TMojkomponent]);

a błąd właściwie dwa tak:
Unknown directive: 'RegisterComponents'
i
Declaration expected but '(' found

Wie ktoś może dlaczego kompilator tak się zachowuje?
Sprawdzałem w źródłach innych komponentów i tam jest tak samo.
Proszę o pomoc!

0

podaj linijkę wcześniej - pewnie brakuje średnika czy co...

0

Pierwszy error jest już nie aktualny.
Masz wszystko od tego momentu do samej góry:

unit TListViewSaver;

interface

uses
  SysUtils, Classes,ComCtrls;

type
  ListViewSaver = class (TObject)
  FFileName: String;
  AListView: TListView;
  public
    procedure Save (ListView: TListView);
    procedure SaveDef;
    procedure Load (ListView: TListView);
    procedure LoadDef;
    property FileName: string read FFileName write FFileName;
    property ListView: TListView read AListView write AListView;
end;

procedure Register;

implementation

procedure Register;
begin

 RegisterComponents('Win32', [TListViewSaver]);
end;
0
type
   TListViewSaver = class (TObject)

zjadłeś literkę T

0

Ja dodaje 'T' to mówi że identifier redeclared i dalej nic nie można czynić. Pomocy!!

0

to skasuj T stąd:

RegisterComponents('Win32', [ListViewSaver]);
0

Problem w tym, że jak usuwam 'T' to kompitalor na to:
Incompatible types: 'TComponentClass' and 'Class reference'
"Prosiemy";p o pomoc. :-)

0

A próbowałeś nazwać komponent inaczej?

0

Próbowałem i jest ten sam błąd. Proszę o jakieś porady (jeszcze). Spróbuje przpisać kod do nowego pliku ale wątpie czy coś to da.Help!!

0

Hmm... a może spróbuj wziąć File-->New-->Other... -->Component i w ten "szablon" wklej swój kod?
//Chwile później
A może po prostu błąd polega na tym, że unit powinien się nazywać np. cos, a komponent - tcos ?

0

Nazwa unit (pliku) jest taka sama jak komponentu - moze w tym jest problem? unit TListViewSaver zapisz jako ListViewSaver...

Jestem poczatkujacy i pewnie sie myle, ale sprawdz to.

Jacek

1 użytkowników online, w tym zalogowanych: 0, gości: 1