![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Подскажите, как сделать подобную кнопку без применения экзотики (по-моему, можно сделать из SpeedBar, но как)?
|
|||
|
||||
| comtat |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1310 Регистрация: 2.5.2006 Где: Россия, Казань Репутация: 3 Всего: 71 |
Вариантов много вот несколько :
1. Можно через PopupMenu 2. можно через ToolBar создав кнопку Button и свойстве Style выбрать tbsDropDown -------------------- Рожденный в СССР !!! ExtJS - мой фреймворк |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
||||
|
||||
| comtat |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1310 Регистрация: 2.5.2006 Где: Россия, Казань Репутация: 3 Всего: 71 |
Ставишь на форму ToolBar
Нажимаешь правой кнопкой на нем вылазит меню выбираешь New Button в его свойствах находишь Style а том уж и tbsDropDown Это сообщение отредактировал(а) comtat - 13.6.2006, 13:51 -------------------- Рожденный в СССР !!! ExtJS - мой фреймворк |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
ToolBar я ставить не хочу, т.к. он не держит стиль XP, и тулбар становиться одноцветным и выделяется.
|
|||
|
||||
| z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
а у тебя на скринщоте именно он и есть... -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
У меня в винде настроено отображение в классическом стиле. Но я не думаю, что так всем нравится, поэтому необходимо, чтобы мои усилия по созданию панели в стиле WinXP не оказались напрасными... Это сообщение отредактировал(а) kирилл - 13.6.2006, 15:06 |
|||
|
||||
| comtat |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1310 Регистрация: 2.5.2006 Где: Россия, Казань Репутация: 3 Всего: 71 |
Ну тогда используй ActionManager, XPColorMap и ActionToolBar Могу пример кинуть ... -------------------- Рожденный в СССР !!! ExtJS - мой фреймворк |
|||
|
||||
| z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Ты уж определись чего ты хочешь
-------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
||||
|
||||
| comtat |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1310 Регистрация: 2.5.2006 Где: Россия, Казань Репутация: 3 Всего: 71 |
Короче берешь ActionManager, XPColorMap и ActionToolBar
и настраиваешь стиль под то что ты хошешь так как ты считаешь, что должен выглядеть стиль XP Удачи -------------------- Рожденный в СССР !!! ExtJS - мой фреймворк |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Под "стиль ХР" имею ввиду переливаемость тулбара в ИЕ (он вначале светлый, а в конце темнее)
|
|||
|
||||
| comtat |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1310 Регистрация: 2.5.2006 Где: Россия, Казань Репутация: 3 Всего: 71 |
Так всего лишь градиентная заливка нужна ??
-------------------- Рожденный в СССР !!! ExtJS - мой фреймворк |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Да, но начальный и конечный цвета заранее не известны
|
|||
|
||||
| z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
кстати, а разве тулбар XPmainfest не понимает?!
-------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
||||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
C ToolBar ничего не получается - он монотонного серого цвета
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
в пакете компонентов jedi-vcl на закладке buttons есть компонент arrowedbutton. Точь-в-точь, как тот, что на рисунке у тебя в первом посте.
|
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
skyboy, пакет jedi-vcl у меня не установился.
comtat, спасибо за исходники, но мне нужны не кнопки с подсветкой, а чтобы сама панель была с левой стороны одного цвета, с правой другого, а между ними градиентный переход. Кто-нибудь знает, как сделать такой переход для компонента ToolBar? Это сообщение отредактировал(а) kирилл - 14.6.2006, 11:24 |
|||
|
||||
| Snowy |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Сделай вызов этой процедуры в OnPaint. В OnResize пропиши Invalidate; У formы установи DoubleBufered в true. Пример использования:
В третий параметр можешь указать 2 и более цветов для градиента. |
||||
|
|||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
kирилл, как это - "не установился"? ты "ридми.тхт" читал? надо в vcl\examples\installhelper запустить проект, скомпилировать, он сам всё установит...
|
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
||||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Первый код поставь выше.
А Canvas не может не быть - это основа. |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Не катит. Создаю новое VCL Forms Application, вставляю часть кода. Результат:
Запускаю, выдает ошибку "Undeclared identifer: 'MultiGradientRect'" |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Ясен перец.
После {$R *.dfm} вставь процедуру
который я привёл выше. Вот же он - первый в этом посте: http://forum.vingrad.ru/index.php?showtopi...p;#038;p=762589 А ты только второй код взял. Добавлено @ 13:25 Прочитай этот пост 3 раза. 1-й код - процедура 2-й пример использования. Ты взял пример использования, а чего использовать - не взял... Вот и не работает. |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Snowy, Всавил код, все работает, заливает, кроме одного
Это сообщение отредактировал(а) kирилл - 16.6.2006, 12:57 |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Проверил, перепроверил - всё работает.
Попробуй создать приложение с нуля и добавить этот код, ничего не перенастраивая. Если не сработает - выкладывай. P.S. какая версия дельфей? |
|||
|
||||
| kирилл |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 19.5.2005 Репутация: нет Всего: нет |
Если приложение с нуля - то все отлично работает. А долбынный тулбар заливается черным
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
У тулбара нужно не в OnPaint писать, а в OnCustomDraw.
|
|||
|
||||
![]()
|
| Правила форума "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. |