Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Resource TmyForm not Found


night_light ©   (2009-10-15 13:07:00) 

при создании формы (выполнении create) выскакивает сообщение "Resource TmyForm not Found", что я не сделал?


Медвежонок Пятачок   (2009-10-15 15:56:00) [1]

а чем визуальный дизайнер форм-то не угодил?


night_light   (2009-10-15 15:50:00) [2]

на самом деле я хотел вот это:

unit umyForm;
interface

uses Forms;
type
TmyForm = class(TForm)
 public
  ...
  constructor create(...);
 end;

implementation

constructor TmyForm.create(...);
begin
inherited CreateNew(Application);
Visible := True;
...
end;

...
end.



unit Unit1;
interface

uses Forms, uMyForm;

type
TForm1 := class(TForm)
 ...
 public
  myForm: TmyForm;
  ...
 end;

var
 Form1: TForm1;

implementation
{$R *.dfm}
...
end.


night_light   (2009-10-15 15:40:00) [3]

Удалено модератором
Примечание: Повежливее к отвечающим


Медвежонок Пятачок   (2009-10-15 15:35:00) [4]

ковырял ковырял. не отмажешься.
R директиву у тебя же не лунатики грохнули.


night_light   (2009-10-15 15:32:00) [5]

я ничего не ковырял :)
только теперь сколько нибудь толково
объяснили, как создавать форму, пробую.


Anatoly Podgoretsky   (2009-10-15 15:32:00) [6]

А может проще, может он просто хочет создать форму и не понимает, что надо использовать TForm, а не TMyForm


night_light   (2009-10-15 15:28:00) [7]

файла 'uMyForm.dfm' конечно же нет,
потому что я его не создавал, и делфи не позаботилась,
соответственно вопрос, кто должен создавать этот файл,
что нужно для его корректного создания?
в форме конечно же есть элементы контроля (по задумке),
иначе у неё пропадает смысл.
С динамическим созданием компонент всё элементарно,
создаю модуль, наследую в нём класс от имеющегося компонента,
описываю нужные мне поля, в основном модуле подключаю созданный
модуль, создаю экземпляр класса, для контролов делаю InsertControl и использую. А вот для форм надо сделать что-то ещё не очевидное мне.
Может кто скажет, что?


Медвежонок Пятачок   (2009-10-15 15:19:00) [8]

модуль формы и ресурс dfm имеют разные имена... :)

не обязательно.
они могут иметь одинаковые имена, но при этом их содержимое не бъет с именами


clickmaker   (2009-10-15 15:17:00) [9]

> не смог найти толкового объяснения по динамическому созданию
> формы.

CreateNew, если dfm нет. ну и в рантайме создавать и класть на форму все компоненты


Медвежонок Пятачок   (2009-10-15 15:17:00) [10]

он ковырял руками файлы проекта и все испортил


{RASkov}   (2009-10-15 15:17:00) [11]

> Либо модуль, где описана форма, имеет отличное имя от uMyForm.pas

не, немного не так.... правильно сказать модуль формы и ресурс dfm имеют разные имена... :)


{RASkov}   (2009-10-15 15:14:00) [12]

> [2] night_light ©   (15.10.09 15:06)
> [Error] File not found: 'uMyForm.dfm'

Либо модуль, где описана форма, имеет отличное имя от uMyForm.pas либо файла 'uMyForm.dfm' действительно нет.

> не смог найти толкового объяснения по динамическому созданию формы.
> Чем оно отличается от аналогичного создания компонента?

ничем, если не содержет дополнительных полей, таких как наприер Label1: TLabel;, Edit1: TEdit; и т.д.
которые в свою очередь и хранятся в ресурсе формы т.е. *.dfm
другими словами это корректно:

with TForm.Create(nil) do try
 ShowModal;
finally
 Free;
end;

будет создана и показана пустая форма у которой нет файла ресурса *.dfm....


night_light   (2009-10-15 15:06:00) [13]

директиву добавил, теперь компилятор ругается:
[Error] File not found: 'uMyForm.dfm'
не смог найти толкового объяснения по динамическому созданию формы.
Чем оно отличается от аналогичного создания компонента?
Может ссылочку кто кинет на нормальную статью?


Юрий Зотов   (2009-10-15 13:38:00) [14]

Возможно, в модуле этой формы удалена директива {$R *.dfm}


Наверх

Титульная страница Поиск, карта сайта Написать письмо