ПредишенСледващото

Има модул:

единица UFDCE;

употреби
# XA0; Windows, съобщения, SysUtils, Уроци, графики, контроли, формуляри, диалогови прозорци, # XA0; ComCtrls, StdCtrls;

тип
# XA0; TFDCE = клас (TForm)
# XA0; # XA0; DateTimePicker1: TDateTimePicker;
# XA0; # XA0; процедура FormResize (Sender: TObject);
# XA0; край;

процедура TFDCE.FormResize (Sender: TObject);
започвам
# XA0; DateTimePicker1.Height: = ClientHeight;
# XA0; DateTimePicker1.Width: = ClientWidth;
приключи;

По-късно в програмата, ако погледнем на този клас FindClass ( "FDCE");
, След това има грешка: "клас не е намерен".
Ако извършите проверката, когато създавате основна форма, едно и също нещо се случва. Prompt е бъг или правя нещо нередно? Благодаря.

но не мислиш ли, че TFDCE и FDCE са две различни неща?

Изглежда, че нещо, което правя грешно, или какво да кажем за директивата не знам: Аз нямам клас не се регистрира, за TListBox пример.

ако не бъде намерен на класа, а след това име е неправилна или регистъра не се нарича изобщо

Изглежда, разбира се, че не се нарича да се разбере, е защо?

Например, тъй като модулът не е в нито една от yuzez

инициализация
ShowMessage ( "бла бла бла");
RegisterClass (TFDCE);


> Например, тъй като модул не е в някоя от yuzez

достатъчно, за да бъдат изброени в .dpr

Обърнете внимание на параметъра:

функция RegisterClass (конст lpWndClass: TWndClass): атом; stdcall;

и да видим как да се направи регистрация в forms.pas


> _Guest_ # XA0; (01.07.08 13:39) [10]

> Въпросът изглежда проста: да се създаде главния прозорец извършване
> RegisterClass (TListBox);
> Next бутон: FindClass ( "TListBox"); - Всички грешка: клас
> Не е намерен. Защо? Очевидно аз съм липсва нещо, но не мога да намеря.

Какво не ми казваш нещо.

> Обърнете внимание на настройките:

Това е малко на друга история.

Ето един пример, погледнете разликите

употреби
# XA0; Форми,
# XA0; основен в "main.pas",
# XA0; друг в "other.pas";

започвам
# XA0; Application.Initialize;
# XA0; Application.CreateForm (TForm1, Form1);
# XA0; Application.Run;
край.

интерфейс
употреби
# XA0; Windows, съобщения, SysUtils, варианти, Курсове, графики, управление, контролните форми,
# XA0; диалози, StdCtrls;

тип
# XA0; TForm1 = клас (TForm)
# XA0; # XA0; Button1: TButton;
# XA0; # XA0; процедура Button1Click (Sender: TObject);
# XA0; край;

Var
# XA0; Form1: TForm1;

процедура TForm1.Button1Click (Sender: TObject);
Var
# XA0; F: TCustomForm;
започвам
# XA0; F: = TFormClass (FindClass ( "TForm2")) Създаване (собствена) ;.
# XA0; опитате
# XA0; # XA0; SetStrProp (F "StrProp", "Здравей, свят!");
# XA0; # XA0; F.ShowModal;
# XA0; накрая
# XA0; # XA0; F.Free;
# XA0; край;
приключи;

интерфейс
употреби
# XA0; Windows, съобщения, SysUtils, варианти, Курсове, графики, управление, контролните форми,
# XA0; диалози, StdCtrls;

тип
# XA0; TForm2 = клас (TForm)
# XA0; # XA0; Edit1: TEdit;
# XA0; # XA0; процедура FormShow (Sender: TObject);
# XA0; частен
# XA0; # XA0; FStrProp: низ;
# XA0; публикувано
# XA0; # XA0; имот StrProp: низ прочетете FStrProp напиши FStrProp;
# XA0; край;

Var
# XA0; ФОРМА2: TForm2;

процедура TForm2.FormShow (Sender: TObject);
започвам
# XA0; Edit1.Text: = FStrProp;
приключи;


> По време на създаването на формата (не автоматично), който притежава
> Този компонент получа съобщението Не е намерено TFDCE клас.
> # XA0;

употребите образува Непознат единица за този компонент?


> _Guest_ # XA0; (01.07.08 14:12) [16]

> # XA0; направи един прост пример, вече описан в [10] и все още се
> Грешка.

Направете същото с нов проект.
Ако има грешки при търсене listboksa - код тук.

> В използва форми файл единица за този компонент?

Компилаторът няма да RegisterClass.


> По време на създаването на формата (не автоматично), който притежава
> Този компонент получите съобщение: TFDCE класа не е намерен

Делото за малки - да се намери нещо нередно с основния проект, в който една дузина форми и куп код, но е ясно, че това е моят глупости. Благодаря на всички ви, не рита много, ако след известно време отново се разсейва. За къде да копаят дори не мога да си представя: в проекта, освен показване на данни от базата данни TStringGrid нищо. Ще започне да се хвърлят, докато всички серии.

Всички хвърли освен основната форма - не работи. Съвсем случайно, никой няма идеи, отколкото можете да събаря куп RegisterClass - FindClass?

ние няма да видите кода?


> _Guest_ # XA0; (01.07.08 15:17) [22]
> Всички изхвърлен освен основната форма - не работи. напълно
> Злополука на никого няма представа какво можете да смаже един куп RegisterClass
> - FindClass?

Задръжте натиснат клавиша Ctrl и кликнете на Букаву Myshakov RegisterClass, след като гледам в нововъзникващите Букаву и мнозина мислят.

Crush да пишете кода си.


> Емпирично открих, че тази ситуация води употреби
> QControls # XA0; в един от модулите

Е, предполагам, че има RegisterClass си

Памет: 0,79 MB
Време: 0,032 гр

Подкрепете проекта - споделете линка, благодаря!