![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Гость_BoB |
|
|||
|
Unregistered |
Проблема в следущем: В DLL находится форма, на форме панель, на панели TreeView. Прорисовка контролов производится следущим образом:
fmDLL.TreeView.Parent:= nil; fmDLL.TreeView.ParentWindow:= hPanel; Где hPanel - хендл панели, на которой прорисовывается контрол. Так вот само дерево показывается, картинки дерева прорисовываются, а надписи НЕТ!!! Кстати и картинки тоже странно себя видут, пропадают иногда... Помогите плиз!!!! |
|||
|
||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
Какое окно? Модальное или нет? Если не модальное, то ты синхронизуешь обьект Application ДЛЛ-ки с Аппликейшеном твоего проекта?
Это сообщение отредактировал(а) <Spawn> - 26.7.2004, 16:26 -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| ShimON |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.7.2004 Репутация: нет Всего: нет |
Объясни плиз поподробнее я не очень понимаю, что значит синхронизировать?? Не мог бы ты кусочек кода написать?? Заранее спасибо!! |
|||
|
||||
| <Spawn> |
|
||||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
Елси я правильно помню, то в ДЛЛ-ке пиши:
в своей программе перед созданием окна пишешь:
-------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
||||
|
|||||
| ShimON |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.7.2004 Репутация: нет Всего: нет |
Ну если это называется синхронизировать, то я это уже давно сделал... А больше никаких советов нет???
|
|||
|
||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
ShimON Ну я просто так выразился.
Мне, кстати, непонятно, зачем все вот эти манипуляции:
Можно ведь ни чего не трогая разместить на форме, описать логику работы и поместить в ДЛЛ. И еще hParent - это хендл формы ДЛЛки или твоей главной формы? -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| ShimON |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.7.2004 Репутация: нет Всего: нет |
Если имеется ввиду чтобы в главной форме уже всё было во время создания формы, а логику писать в длл, то это не подходит по замыслу. Замысел в том чтобы сделать плагин, причём каждый создатель плагина должен мочь рисовать на моей панели всё что захочет...
хендл главной формы, а что ты имел ввиду говоря зачем те строки которые я написал??? А как по другому прорисовать контролы из длл на главной форме, может тебе это проще будет предложить??? Заранее спасибо |
||||
|
|||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
ShimON
Контролы из ДЛЛки не осбоенно то дружат с приложением. Попробуи использовать, либо пакеты Дельфи, либо пиши ActiveX -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| ShimON |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.7.2004 Репутация: нет Всего: нет |
Спасибо за совет, но пакеты мне не подойдут по причине того, что требуется хоть какая-нибудь универсальность, а вот насчёт ActivеX я подумаю, правда с ними я ещё ни разу не работал, расскажи, пожалуйста, где можно достать инфу и как это можно применить в моей ситуации. |
|||
|
||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
Для того чтобы создать ActiveX из компонента достаточно пойти в New->Other->ActiveX->ActiveX Control и выбрать класс из которого будет слеплен ActiveX. После этого регаешь его и подключаешь к своему проекту полученый TLB файл. Когда нужно внести изменения - то просто правишь код и формирушь новый .ocx файл. Для более сложных структур типа панель или группа с разными компонетами, пока приходит только следующая мысль - пишется наследник от нужного класса, на котором динамически формирются нужные контролы и реализуется вся функциональность, после чего регистрируется данный класс и опять же лепится ActiveX за пару кликов. Но вот только вопрос - зачем тебе такого рода контролы в твоем приложении, если они все равно не могут общаться с этим приложением стандартными способами(ну разве что организовать обмен сообщениями или создать COM сервер из твоего приложения, для получения внешних контролов доступа к каким то его свойствам или воспользоваться какой то другой технологией)?
Это сообщение отредактировал(а) <Spawn> - 29.7.2004, 20:03 -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| ShimON |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.7.2004 Репутация: нет Всего: нет |
Спасибо тебе <Spawn> Я буду думать.... В любом случае ты мне очень помог!!!
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |