|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.04.2013, 00:25 | #1 |
Регистрация: 09.04.2013
Сообщений: 7
|
Как создавать компонент Delphi
Добрый день. Нужно создать компонент, в котором будут собраны несколько элементов управления, какой правильный порядок действий. Подскажите в чем ошибка. Порядок действий вроде стандартный.
Среда DELPHI XE3 1. Создаю папки проекта и компонента. 2. FILE\NEW\VCL FORM APPLICATION 3. Component \New Component ...
ВНЕЗАПНО - Сообщение об ошибке: ---------------------------------------------------------------------- Unit "Panel1.pas" references the "Visual Component Library" framework, but the project currently has no framework assigned. Do you want to enable the "Visual Component Library" framework for this project? (Not enabling the proper framework may require unit scoping, ambiguities, and linkage to framework binaries to be handled manually) [Yes][No][Cancel] ---------------------------------------------------------------------- Я так понимаю, предлагает сделать VCL основой моего компонента. Жму ОК. Компиляция .... сообщение: ----------------------------------------------------------------------- Package .... as been installed. The following new component(s) have been registered: TPanel1. [OK] ----------------------------------------------------------------------- 6. Типа все ОК. Panel1.pas. Во вкладке Samples видно мой компонент. 7. Перекидываю его в форму .... компилирую. Сообщение: ----------------------------------------------------------------------- Cannot run project unless a host application is defined. Use Run|Parameters ... Dialog box. [OK] ----------------------------------------------------------------------- Просит выбрать приложение-хост. Дальше что делать? Мое приложение выбрать я не могу, поскольку оно еще не скомпилировалось, и мне кажется что-то неправильно делаю, поскольку судя по мануалу http://www.interface.ru/fset.asp?Url...d5_2prraz1.htm они вместе компилироваться должны. Тем более я уже перетащил компонент в форму. Много вопросов по этой этой теме: 1. Мне нужно создать компонент, в котором будут собраны несколько элементов управления, какой правильный порядок действий. 2. ссылку на хорошу инфу по созданию компонентов в DELPHI XE3, в инете в основном нахожу по 7 Delphi и кажется что есть различия. 3. Что писать в Search path пункт 3. 4. Как перейти в режим визуального редактирования элемента, в результате описанных действий, визуальное редактирование было недоступно для Panel1.pas 5. Чем отличается на практике Install new Package от Install existing Package 6. Как подключить нвый компонент в случае выбора Create new Package 7. Утром идешка меня озадачивала, не добавляя новый компонент в палитру и сообщая об ошибке компиляции "не найден TPanel1", хотя я точно выбирал не пункт Create new Package. Вот такие непонятки, буду признателен за разъяснение. Последний раз редактировалось LuckyD; 14.04.2013 в 00:35. |
14.04.2013, 10:20 | #2 | |||||||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Второе обычно выбирают, когда хотят допилить набор компонентов каким нить новым без особых изменений самой палитры. Цитата:
Цитата:
I'm learning to live...
|
|||||||
14.04.2013, 12:00 | #3 | |
Регистрация: 09.04.2013
Сообщений: 7
|
Как создать приложение с несколькими компонентами
Осталось 2 вопроса.
1. Почему Unit1 в Uses не видит TMyPanel. Возможно это связано с размещением TMyPanel в подкаталоге. 2. Визуальное редактирование: по идее должно быть окно рисования компонента, в котором можно размещать другие элементы - составляющие моего проекта. Чтобы после размещения моего компонента в форме приложение, они все кучей появились в приложении. Или как? Сейчас я пытаюсь делать компонент на основе TPanel, чтобы накидать в него других компонентов, но в MyPanel1.pas кнопка Toggle Form\Unit недоступна. Цитата:
С учетом ответа и новой информации попробую немного конкретизировать вопрос. Как создать приложение с несколькими компонентами, причем внутри каждого компонента должны быть несколько других стандартных компонентов, например поле ввода и кнопка, и чтобы это все вместе компилировалось? Получается такая картина. Структура проекта: Код:
Если все делать по порядку: Создавать package первого компонента в папке с проектом и последующие компоненты добавлять в него, то вновь созданные компоненты в палитре компонентов появляются нормально. Удалить их потом можно через меню Component\Install Packages ... Последний раз редактировалось LuckyD; 14.04.2013 в 13:35. |
|
14.04.2013, 14:45 | #4 |
Регистрация: 09.04.2013
Сообщений: 7
|
По поводу создания сложных компонентов - исчерпывающе
http://www.compress.ru/article.aspx?id=9739&iid=411 нужно прописывать ручками - "Было бы удобно поместить наши элементы управления на какую-либо форму и затем создать из них компонент. В стандартной поставке Delphi такой эксперт отсутствует. Поэтому необходимо будет создавать компоненты самим и размещать их на панели. " Последний вопрос - как сделать чтобы Unit1 в Uses видел TMyPanel, если файл модуля компонента находится в поддиректории. |
14.04.2013, 14:51 | #5 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
И компонент отдельно выдумывать не придется - получишь свою а-ля панель с накиданными на ней другими компонентами. Цитата:
Серьезно, не шучу и без сарказма. Сам его часто юзаю в таких ситуациях.
I'm learning to live...
|
|||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как правильно создавать запросы в Sql из Delphi 7 | MixanMM | БД в Delphi | 13 | 20.07.2010 13:29 |
Как установить компонент на Delphi 2007 | Kostia | Компоненты Delphi | 7 | 06.04.2010 16:11 |
Как установить компонент в Delphi 2007? | juan666777 | Общие вопросы Delphi | 2 | 08.06.2009 22:10 |
Как добавить компонент в Delphi? | Evgenii | Компоненты Delphi | 2 | 07.02.2009 12:55 |
Как в Delphi создавать и использовать скины для програм | SeRhy | Помощь студентам | 3 | 20.12.2007 20:59 |