Главная Новые темы Список тем Задать вопрос Поиск  

Форум "Delphi" (архив)


Паскаль, Делфи


 #0  ID © 24.05.05 09:49:46 - 24.05.05 13:44:04

Создание собственного компонента



Добрый день, гуру!
Подскажите, пожалуйста, новичку.
Есть необходимость создать свой собственный компонент (календарик с возможностью раскраски дней разным цветом, при необходимости, с кнопками прокрутки месяца и года).
Вопрос мой в следующем. Существует ли программка или утилитка для визуального создания каркаса компонента (в среде Делфи нашел лишь Component -> New Component), т.е. разместить на TWinControl  кнопки, гриды, эдиты, указать , какие свойства будут доступны для настройки в готовом компоненте и т.п., а все остальное - уже руками. Цитата

 #1 Паша © 24.05.05 10:30:01

фиг его знает, есть-ли... можно, к примеру, взять обычную форму. на ней разместить, чего надо. а потом компонент унаследовать от этой формы. или создавать эту форму в контексте другого какого компонета
 #2 deep © 24.05.05 10:34:50

>#0 ID ©
тебе нужна компонента или ты хочешь научиться писать компоненты?

Если первое -- то можно найти кучу компонент удовлетворяющих твои потребности.

Если второе, тогда...
> Component -> New Component), т.е. разместить на TWinControl
>  кнопки, гриды, эдиты, указать , какие свойства будут доступны
> для настройки в готовом компоненте и т.п., а все остальное
> - уже руками.

единственно, что за родителя лучше брать не TWinControl, а например TCustomPanel -- удобнее будет работать.

 #3 Паша © 24.05.05 10:54:48

Вить, а как ты видишь себе наваяние потомка от панели, да еще так, шоб в дизайнере на этой панели шо-то там мышей елозить?
 #4  ID © 24.05.05 11:00:25

тебе нужна компонента или ты хочешь научиться писать компоненты?
И то и другое. Но найти сам компонент, наверное важнее. Может кто нибуть сталкивался с таким компонентом, бросьте линк, пожалуйста, а я пока нырну в www.Torry.ru , может найду там...

З.Ы. Мне раньше доводилось на VFP5.0,  VB, писать программки, и там была возможность визуально строить что-то похожее на компонент, по этому и зацепился за мысль о том, что должно такое быть и в Делфях.
 #5 Knight © 24.05.05 11:03:40

>#3 Паша © 24.05.05 09:54:48
Deep оффтопит... объясняет КАК, а вопрос был ЧЕМ, чтоб не разбираться в том КАК  
 #6 Паша © 24.05.05 11:10:46

> что должно такое быть и в Делфях
хочецца - а нету. насколько я знаю. но можно и обойти вышеописанным методом. через форму. я так делал. или тогда уж все ручками писать
 #7 deep © 24.05.05 11:17:51

>#3 Паша ©
можно. Это не сложно. А как ты думаешь работают те же гриды?   Просто саму панель и все что на ней нужно создавать и удалять динамически(т.е.строками кода).

> а я пока нырну в www.Torry.ru
там их предостаточно  
 #8 Паша © 24.05.05 11:28:56

>#7 deep ©
дык, человек хочет в визуалке ваять. ты не путай. кроме того, если элементов много, и они расположенны хитрым образом, то фиг ты так сделаешь. разве что, опять-же, сделать форму, потом выдрать из кода dfm все координаты и прочаяя. токо нафик это надо? шоб было злее?
 #9 Knight © 24.05.05 11:38:52

>#8 Паша © 24.05.05 10:28:56
Ну... календарик можно и так наваять... панель, несколько контролов для прокрутки, отображения годов и месяцев... сам календарь можно и на канве самой панели нарисовать, но удобнее на PaintBox'е...
 #10 deep © 24.05.05 11:50:09

> сам календарь можно и на канве самой панели нарисовать,
> но удобнее на PaintBox'е...

зачем? для чего тогда TCustomGrid придумали?

>#8 Паша ©
ну напишешь календарь на форме, и как ты его будешь вставлять в нужное место другой формы?

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

отчего, же делал. Около 15 контролов, создать и разместить -- не так уж сложно. Сложнее с логикой и отладкой.
 #11 Mystic © 24.05.05 12:02:21

> зачем? для чего тогда TCustomGrid придумали?

Имхо, для чего-то более гридового...
 #12 Паша © 24.05.05 12:04:30

>#10 deep ©
календарь можно не писать. можно готовый взять.

> как ты его будешь вставлять в нужное место другой формы
ну, и какая проблема? убрать заголовки, убрать кнопки, и вывести форму в необходимых координатах. не понял, где сложность?

зы. не забывай, что человеку визуалки хотелось
ззы. кстати, а можно таким макаром сделать... на форму панель, на панели вся лабуда, потом в рантайме создаем формочку, выдираем с нее панель. не знаю, так можно или нет. или просто дублируем панель и все, что на ней находицца, после чего форму прибиваем.
 #13  ID © 24.05.05 12:04:39

...дело в том, что компонент у меня уже есть, т.е. я его когда то написал , за основу взяв из Sampels.
Построил его на TDrawGrid (он у меня единственный в компоненте), так как мне нужно было любым цветом подвсечивать необходимую ячейку. Теперь меня посетила муза и вдохновила на модернизацию компонента, захотелось добавить там кнопки , эдиты все то, что я дорисовывал в программке рядом с компонентом.
На Torry раньше искал и сейчас смотрел - не нашел то, что мне максимально подходит, и пришел к выводу - "свое" -  самое родное и самое наиболее подходящее, тем более на Torry много компонентов платных, много без исходников, и все их перебирать по времени будет тоже самое , что написать собственный.   Есть конечно ситуации, что проще найти, чем создать собственное, но в моем случае наверное не так  
 #14  ID © 24.05.05 12:33:27

нашел похожий компонент, буду разбирать "по винтикам": на этом же Torry нашел TmxCalendar с необходимыми кнопками и исходным кодом. Немного переделаю, и будет то что нужно. Вот еще один вариант решения задачки, - найти похожий компонент с исходниками и изменить его в нужном направлении :)
 #15 clickmaker © 24.05.05 12:38:34

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

изменить? Это не спортивно. Настоящий программер будет искать, пока не найдет то, что и менять не надо  
 #16 Knight © 24.05.05 12:56:57

>#10 deep © 24.05.05 10:50:09  
> > но удобнее на PaintBox'е...
> зачем? для чего тогда TCustomGrid придумали?

Зачем перерисовавать другое под свои нужды если можно нарисовать всё самому как надо в одном событии...  
 #17  ID © 24.05.05 13:44:04

изменить? Это не спортивно. Настоящий программер будет искать, пока не найдет то, что и менять не надо  

принял во внимание. Поиски продолжаю....




  • Тема находится в архиве

    Написать ответ

    Имя: Регистрация HTML?
    smiles смайлики
    Потом перейти в:    
    паутина



      ©  webest.net, 2002-2007  

    top.mail.ru
    » Бесплатный счетчик посещений
    » Рейтинг сайтов