Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];

Вниз

Визуальные компоненты на TDataModule   Найти похожие ветки 

 
DevilDevil ©   (2007-10-19 15:36) [0]

Наверняка есть такая возможность, подскажите, по какому пути идти...

Чтобы в дизайн-тайме на TDataModule можно было класть мои "визуальные" компоненты, изменять их свойства (например, Left, Top, Width, Height, ... ), ну а в рантайм они считывали бы такие свойства и работали, как должны.

KOL-программистам наверняка ещё сложнее, там даже TDataModule-я нет.

Заранее спасибо.


 
DimaBr ©   (2007-10-19 15:40) [1]

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


 
Palladin ©   (2007-10-19 15:45) [2]

Лучше бы они удалялись, а не переносились, вся конференция красная, и опять же в архив быстрее ветки сливаются, соответственно из онлайна вырезаются...


 
KSergey ©   (2007-10-19 15:46) [3]

> DevilDevil ©   (19.10.07 15:36)  
> Чтобы в дизайн-тайме на TDataModule можно было класть мои
> "визуальные" компоненты, изменять их свойства (например,
>  Left, Top, Width, Height, ... ), ну а в рантайм они считывали
> бы такие свойства и работали, как должны.

"Как должны" - это как?? дата модуль вроде как не отображается в Run-time


 
Eraser ©   (2007-10-19 15:48) [4]


> DevilDevil ©   (19.10.07 15:36) 

есть такой компонент TForm - вот ключ к решению проблемы.


 
Palladin ©   (2007-10-19 15:49) [5]


> KSergey ©   (19.10.07 15:46) [3]

он хочет реализовать, что то на подобие репозитория.


 
KSergey ©   (2007-10-19 16:09) [6]

Ва! Телепаты таки вернулись с отпуска!
Заходите, милости просим!! Рассаживайтесь как вам удобнее :)


 
DimaBr ©   (2007-10-19 16:35) [7]


> Palladin ©   (19.10.07 15:45) [2]


Слушаюсь !!!


 
DimaBr ©   (2007-10-19 16:39) [8]

Сравните и почувствуйте разницу
TDataModule = class(TComponent)
и
TForm = class(TCustomForm)


 
Eraser ©   (2007-10-19 16:41) [9]


> DimaBr ©   (19.10.07 16:39) [8]

TObject
TPersistent
TComponent
TControl
TWinControl
...
TForm


 
Правильный_Вася   (2007-10-19 17:55) [10]

TFrame


 
DevilDevil   (2007-10-19 20:20) [11]

мда...

> DimaBr ©   (19.10.07 15:40) [1]

уж чего-чего, а такого точно не ожидал ))
вообще, я надеялся, и похоже зря, что путём использования директив компилятора DESINE_TIME-подобных, можно было бы создать компоненты, в DesineTime работающие одним образом, в ран-тайм - другим.
Именно поэтому, не как не ожидал, что мой вопрос мог бы относиться к вопросам "поиска и использования готовых компонентов, редакторов или экспертов".

Наиболее показательный пример - KOL&MCK.
В KOL вообще нет компонентов как таковых, ДатаМодулей - тем более.

Моя задача-минимум намного проще:  класть на "форму" компоненты и задавать им координаты.

Почему бы не использовать TForm или TFrame, зачем создавать дополнительные проблемы
Вообще говоря, есть идейка одна... категорически не хочется использовать модуль Forms, а возможность изменения координат и размеров необходимы.

Ну тогда с помощью экспертов делай...
Ну во первых, я не знаю как их делать ). Во-вторых... а разве предоставляется возможность затаскивать в них другие компоненты?

Вообще говоря, хочется услышать совет, как реализовать задумку проще всего. Не буду скрывать, существуют задачи-максимум. Захочется больше отображений.

Возможно, придётся писать зеркала... В этом случае прошу дать ссылку на информацию, как собственно они делаются )

Заранее извиняюсь за скудное владение (а точнее невладение) информацией о редакторах и экспертах.

С Уважением


 
DevilDevil   (2007-10-19 20:24) [12]

> KSergey ©   (19.10.07 15:46) [3]

> "Как должны" - это как?? дата модуль вроде как не отображается в Run-time


Совершенно верно, не отображаются.
Допустим я бы средствами WinApi создал окно,  и в соответствии со считанными координатами компонентов из DataModule-я, сам бы их отображал.


 
Palladin ©   (2007-10-19 20:41) [13]


> DevilDevil   (19.10.07 20:20) [11]
> мда...
>
> > DimaBr ©   (19.10.07 15:40) [1]
>
> уж чего-чего, а такого точно не ожидал ))
> вообще, я надеялся, и похоже зря, что путём использования
> директив компилятора DESINE_TIME-подобных, можно было бы
> создать компоненты, в DesineTime работающие одним образом,
>  в ран-тайм - другим.
> Именно поэтому, не как не ожидал, что мой вопрос мог бы
> относиться к вопросам "поиска и использования готовых компонентов,
>  редакторов или экспертов".


понимаешь из твоего вопрос абсолютно не понятно, собираешься ли ты создавать свой компонент или же пытаешься использовать TDataModule не по назначению, так что обижайся сам на себя...

по сути вопроса, хочешь сохранять свойства компонентов в чем то одном и восстанавливать их в чем то друго, то совет, создай другое приложение, расположи на нем контрол, который хочешь "запомнить", расположи на форме Button1, на OnClick которого напиши

Var
f:TFileStream;
Begin
f:=TFileStream.Create("c:\test.cmp",fmCreate);
f.WriteComponent(Контрол); или f.WriteComponentRes(имя_ресурса,контрол);
f.Free;
End;

в последствии восстонавливая его через f.ReadComponent/f.ReadComponentRes

даже приложение написать можно свое, этим пользуясь


 
DevilDevil   (2007-10-19 20:49) [14]

> Palladin ©   (19.10.07 20:41) [13]

Может недоконца понял, но...

Хочу иметь более универсальное средство.
Можно создать своё приложение-редактор, можно создать эксперта...
Но стандартное изменение размеров, коорлинат и вообще ряда свойств в инспекторе объектов меня больше чем устраивает... не устраивает TForm )


 
Palladin ©   (2007-10-19 20:54) [15]

Ну так создай свое приложение-редактор. Пока конкретного вопроса не видно. Правда конечно, на самый первый впорос, ответ - забудь про TDataModule, он и визуальные контролы это как солнце и луна. Оба светят, но...


 
Anatoly Podgoretsky ©   (2007-10-19 21:10) [16]

> DevilDevil  (19.10.2007 20:49:14)  [14]

> не устраивает TForm

Чем?


 
Palladin ©   (2007-10-19 21:21) [17]


> Anatoly Podgoretsky ©   (19.10.07 21:10) [16]

DevilKOL :)


 
Petr V. Abramov ©   (2007-10-19 21:30) [18]

ты б рассказал алгоритм формирования DSN, а то тут много темных в этом вопросе, так и помирают, ни слова сказать ни смогя :)
> ело в том, что DSN не создаётся
молча не создаетя? или ругается?


 
DevilDevil   (2007-10-19 21:46) [19]

> Petr V. Abramov ©   (19.10.07 21:30) [18]
эээ... промахнулся чтоли?

> Ну так создай свое приложение-редактор.
нее, это плохой вариант.

> Anatoly Podgoretsky ©   (19.10.07 21:10) [16]
> > не устраивает TForm
> Чем?


если отвечу, то будет флуда на 30 постов... что мне сейчас абсолютно никчему.

P.S. значит нужно смотреть в сторону зеркал... не подскажете ссылочку на инфо ?


 
Palladin ©   (2007-10-19 21:49) [20]


> нее, это плохой вариант

Тогда я теряюсь в загадках. А что же хороший?


 
Eraser ©   (2007-10-19 22:43) [21]

> [14] DevilDevil   (19.10.07 20:49)


> не устраивает TForm

тогда MSVC++ с winAPI на перевес и вперед )


 
J_f_S   (2007-10-19 22:48) [22]

И не самый плохой вариант, надо сказать!


 
Jump   (2007-10-19 23:15) [23]

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

1. У компонентов нет координат.
2. Координаты есть у контролов, но, для отображения контролов, им надо задать Parent, который TWinControl, коим TDataModule не является.

Так что, или переделывай идеологию VCL на свой манер.
Или... смирись.


 
DevilDevil   (2007-10-19 23:47) [24]

мдя...

> Palladin ©   (19.10.07 21:49) [20]
> > нее, это плохой вариант
> Тогда я теряюсь в загадках. А что же хороший?


Delphi - RAD система, которая обладает всеми необходимыми мне средствами, вручную реализовывать которые достаточно сложно, уж лучше TForm...

тем не менее, прошу какую-нибудь инфо по зеркалам


 
jack128 ©   (2007-10-19 23:55) [25]


> 1. У компонентов нет координат.

есть.


 
одбс   (2007-10-20 00:17) [26]


> jack128 ©   (19.10.07 23:55) [25]

где?


 
jack128 ©   (2007-10-20 00:20) [27]

Сорцы рулят не по деццки.
DesignInfo + F3


 
DevilDevil   (2007-10-20 00:35) [28]

> jack128 ©   (20.10.07 00:20) [27]

ну а какая-нибудь статья, экзампл, ... ?
был бы очень признателен.


 
jack128 ©   (2007-10-20 00:37) [29]

Не думаю. Там три строчки кода, наврядли кто нить будет писать об этом статью..


 
DevilDevil   (2007-10-20 01:10) [30]

> jack128 ©   (20.10.07 00:37) [29]

Вы и многие остальные текста написали много; помощи - ноль.
Прошу изъясняться более детально.
Мне не ясен сам механизм, как проектирование ведётся в TForm, а код работает совершенно иной. Буду благодарен за разъяснения.

Следующий вопрос. Обязательно ли создание двух различных компонентов; или всё-таки можно define-средствами разделять 2 случая: работа в desine-time и в ран-тайм. Кпримеру, чтобы класс TMyButton в Desine-Time наследовался от TWinControl, а в ран-тайм от TComponent ?

P.S. наверняка, что-то непонятно. отвечу на уточняющие вопросы.


 
jack128 ©   (2007-10-20 01:32) [31]


> Мне не ясен сам механизм, как проектирование ведётся в TForm,
>  а код работает совершенно иной. Буду благодарен за разъяснения.
>

А я что, хоть слово сказал о "проэктировании в TForm"?

Просто в ветке было дано неверное утверждение, которое я и отпроверг.


 
111   (2007-10-20 01:33) [32]

Удалено модератором


 
DevilDevil   (2007-10-20 01:39) [33]

Удалено модератором


 
Сергей М. ©   (2007-10-22 08:41) [34]


> DevilDevil   (20.10.07 01:10) [30]


Справку к св-ву TComponent.State штудировал ?


 
Игорь Шевченко ©   (2007-10-22 09:33) [35]

DevilDevil   (20.10.07 01:10) [30]

В древнем Китае желающим странного отрубали голову. Очень мудро.


 
KSergey ©   (2007-10-22 09:49) [36]

> DevilDevil   (19.10.07 20:20) [11]
> Моя задача-минимум намного проще:  класть на "форму" компоненты
> и задавать им координаты.

А че, нельзя было сразу так вот и написать? Если есть лишь такая задача - то вам сюда.
http://www.delphikingdom.com/asp/viewitem.asp?catalogID=342

И еще: обязательно прочтите - хотя бы бегло - статьи из
http://www.delphikingdom.com/asp/section.asp?id=16
Мноого вопросов отпадет.

А что такое "зеркала"?? Это как? Опять мудрим с терминологией?
Вы уж лучше пишите чего вам надоть, а тама может и подскажут верную терминологию.

> Сергей М. ©   (22.10.07 08:41) [34]
> Справку к св-ву TComponent.State штудировал ?

Кроме того, советую почитать вот тут, например
http://www.softhelp.ru/delphi/class/class.php?c=mk_component
а так же в яндексе посикать по "написать простейший компонент Delphi" - так же много полезного найдете.


 
DevilDevil ©   (2007-10-22 12:29) [37]

> Сергей М. ©   (22.10.07 08:41) [34]
> > DevilDevil   (20.10.07 01:10) [30]
> Справку к св-ву TComponent. State штудировал ?


Посмотрел. Ткни носом, подведи итог.

> KSergey ©   (22.10.07 09:49) [36]

Спасибо за желание оказать помощь, но...
1) какое отношение вопрос Parent-ов и Owner-ов имеет к моей проблеме?
2) пробежался по всем темам, нашёл что-то для меня интересное, но опять-таки, ничего к темы подходящего.
3) на работе я разрабатываю компоненты, намного сложнее, представленных в статье ). И мне в этом кстати неоднократно помог DimaBr.

P.S. вопрос до сих пор актуален.
Как не компилируя в приложение код модуля "Forms", пользоваться удобствами IDE, такими как изменение расположения и размеров ?


 
Игорь Шевченко ©   (2007-10-22 12:40) [38]


> Как не компилируя в приложение код модуля "Forms", пользоваться
> удобствами IDE, такими как изменение расположения и размеров
> ?


изменение расположения и размеров кого ?


 
Сергей М. ©   (2007-10-22 12:42) [39]


> DevilDevil ©   (22.10.07 12:29) [37]
> Ткни носом


if (csDesign in MyComponent.State) then
 .. дизайн-тайм - поведение компонента такое-то ..
else
 .. ран-тайм - поведение компонента иное


 
KSergey ©   (2007-10-22 12:47) [40]

> Игорь Шевченко ©   (22.10.07 12:40) [38]
> > удобствами IDE, такими как изменение расположения и размеров ?
> изменение расположения и размеров кого ?

Присоединяюсь к вопросу.
Если вы о TButton, к примеру, то советую внимательно посмотреть на uses в модуле StdCtrls



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.039 c
15-1191196002
Фар-юзер
2007-10-01 03:46
2007.11.25
Где фар-навигатор хранит данные о папках?


2-1193749164
Quart
2007-10-30 15:59
2007.11.25
DBGridDrawColumnCell


15-1193199347
Riply
2007-10-24 08:15
2007.11.25
Потоки от Касперского.


15-1193390167
Avds
2007-10-26 13:16
2007.11.25
Хук на FullScreen?


15-1192991116
JSman
2007-10-21 22:25
2007.11.25
Как защитить свое приложение от крэков?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский