Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.07.2008, 02:20   #21
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

BOBAH13, так это тв без ASkinEditor сделал?
Я вот с ASkin сделал:
Вложения
Тип файла: rar ProfiEx.rar (260.5 Кб, 174 просмотров)

Последний раз редактировалось beegl; 03.07.2008 в 02:30.
beegl вне форума Ответить с цитированием
Старый 03.07.2008, 03:02   #22
Showy
Форумчанин Подтвердите свой е-майл
 
Аватар для Showy
 
Регистрация: 08.08.2007
Сообщений: 183
Хорошо

Цитата:
Сообщение от BOBAH13 Посмотреть сообщение
Вот что уже готово ))
Супер!
P.S. Я тоже собирался подобную компоненту делать
Until The End Of Time
Showy вне форума Ответить с цитированием
Старый 03.07.2008, 08:41   #23
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от beegl Посмотреть сообщение
BOBAH13, так это тв без ASkinEditor сделал?
Я вот с ASkin сделал:
Гы. Что такое ASkinEditor ? Данная библиотека основывается на:

1. Сама система на слоях - UpdateWindowLayers
2. В скин можно упаковать Png, Цвет ( как в Web, вида #00AAFF ), Шрифт - имя, цвет, стиль ( жирный, курсив, подчеркнутый, зачеркнутый ), а так же изюминка, константа - подразумивается хранения числа, но например есть две константы, допустим пишите $form.width - 4.5 конечно 4.5 это не сойдет для Integer но программа - компонент посчитает для данной константы число равное Trunc(Form.Width - 4.5)

Щас начинаю писать контролы, если есть какие идеи, пишите ( только не злоупотреблять )
BOBAH13 вне форума Ответить с цитированием
Старый 03.07.2008, 10:15   #24
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

ASkinEditor - http://www.alphaskins.com/dwnld.php
BOBAH13, а вот такое окошко сможеш сделать? .. :
Изображения
Тип файла: jpg wave_color1.jpg (20.7 Кб, 317 просмотров)
beegl вне форума Ответить с цитированием
Старый 03.07.2008, 14:12   #25
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ну по сути... нарисовать и разметить в скине... и будет окошко еще лучше, но как я уже говорил, минус, а он же и плюс, что за такие эффекты (тени, прозрачности и т.п.) мы жертвуем не поддержкой контролов... хотя... я попробую сделать поддержку, может получиться Да... например у TButton есть PaintTo и все... Так что поддержку стандартных контролов тоже можно сделать.... думаю как раз сначала этим и займусь.

Последний раз редактировалось BOBAH13; 03.07.2008 в 14:32.
BOBAH13 вне форума Ответить с цитированием
Старый 03.07.2008, 14:44   #26
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

BOBAH13, отлично, желаю успехов, я уже задралса, ничего не получаеца, думал сделать с помощью http://sunisoft.com/suiskin/index.htm , но не тут то оно было ).
beegl вне форума Ответить с цитированием
Старый 03.07.2008, 22:04   #27
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Народ, помогайте Начал копать в сторону VCL. Хуки - не катят, установка Application.OnMessage тоже... Переопределил каждому контролу новый обработчик сообщений окна и после обработки вызываю отрисовку данного окна... но проблема. Контролов может быть хоть 9 в периоде, у меня есть список контролов ( соответственно хендлы их ) но когда в обработчик ( мной переопределенный ) приходит одним параметром TMessage, получается у меня нет данных о контроле которому пришла данная мессага, получается в его обработчик. И вот же делема, пашет все на ура так, только вот как определить в обработчике контрола его владельца ). Может провернуть ченить с адресами обработчиков.. так а толку.. я не понимаю, помойму это не выполнимо Кто знает, как переопределить оконную процедуру контрола и чтобы в ней можно было узнать какому контролу ( или хендлу ) пришла мессага?!
BOBAH13 вне форума Ответить с цитированием
Старый 04.07.2008, 12:47   #28
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ну ясно что никого Вышел с помощью SetWindowLong -> GWL_WNDPROC. А вот вопрос... по каким сообщениям приходящим контролам надо прорисовывать их ? Сделал WM_PAINT ну как сказать) очень криво и частями рисуются vcl
BOBAH13 вне форума Ответить с цитированием
Старый 05.07.2008, 11:37   #29
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

В прикрепленном проекте по нажатию на ShowForm в unit3 открывается форма из unit1. На форме есть компоненты, но WndProc всех компонентов одним вызовом переопределены на новую процедуру так, что ни один из них не рисуется, в том числе и сама форма. Там же методы GetControl/getParentForm позволяют по Handle получить компонент.

Несколько замечаний:

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

- в NC области форма все-таки рисуется. Видно Windows по-умолчанию рисует какой-то стандартный вариант и только потом посылает событие. Если поводить по окну другим окном, то видно, что ничего не рисуется, но стоит нажать мышь и рамка окна восстанавливается.

- часть компонентов VCL не являются окнами и не имеют Handle (например, TLabel). События WM_Paint приходят владельцу таких компонентов.

- в TButton при смене фокуса рисуется рамка, показывающая активность. Каким событием непонятно.

Понятно, что это не готовый вариант решения, но может как-то поможет.
Вложения
Тип файла: rar test_wndProc.rar (6.2 Кб, 119 просмотров)
alexBlack вне форума Ответить с цитированием
Старый 07.07.2008, 18:47   #30
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Вот что готово или на моей страничке...
Вложения
Тип файла: zip Project1.zip (292.6 Кб, 229 просмотров)
BOBAH13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прозрачность формы PNG, 2xTCV и др. Veiron Мультимедиа в Delphi 6 25.05.2008 01:19
Защита участков кода BlackOmen Общие вопросы Delphi 5 12.03.2008 08:59
Как задать прозрачность формы dimfil Общие вопросы Delphi 2 09.11.2007 09:53
как рисовать на канве битмапы учитывая прозрачность участков битмапа? Alar Общие вопросы Delphi 0 29.10.2006 23:06