Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

TButton+Glyph   Найти похожие ветки 

 
den303 ©   (2004-12-30 14:42) [0]

Здравствуйте! У меня проблема: как вывести Glyph на TButton"е? TBitBtn и TSpeedButton не подходят из-за не"лунного" интерфейса в ХР. Нигде, к сожалению, не нашёл готового кода, а нужно ОЧЕНЬ срочно, разбираться просто нет времени, поэтому, будьте добры, подскажите! Может, наследоваться от TWinControl? Или от TButton? А без наследования варианты есть?
Заранее спасибо, с уважением, den303.


 
clickmaker ©   (2004-12-30 16:13) [1]


> А без наследования варианты есть?

проще с наследованием. Тебе всего-то надо переопределить CreateParams и подсунуть стиль BS_BITMAP. Ну и завести свойства, которые будут обертками для BM_SETIMAGE / BM_GETIMAGE


 
Vit@ly ©   (2004-12-30 16:25) [2]

Если совсем не хочется заморачиваться, положи на button "на свой вкус" любой Image


 
ламер ©   (2004-12-30 17:17) [3]

вариант 1. используй TThemeManager. он устанавливает свои оконные функции для TBitBtn / TSpeedButton, так что они хорошо выглядят под XP.

вариант 2. НЕ используй сообщений BM_SETIMAGE / BM_GETIMAGE (при этом кнопка сразу же примет обычный вид). вместо них в XP добавлены сообщения BCM_SETIMAGELIST / BCM_GETIMAGELIST, которые позволяют задать до пяти иконок на каждую кнопку (для различных состояний - normal, hot, pushed, disabled, focused).


 
Bork   (2004-12-30 18:48) [4]


> TBitBtn и TSpeedButton не подходят из-за не"лунного" интерфейса
> в ХР

не "лунного" - это как?


 
den303 ©   (2005-01-06 23:40) [5]

Простите, что долго не отвечал - Новый год, времени не было ;o)

2 Bork
"лунный" читай как родной интерфейс WinXP, Luna назывемый.

2 ламер
А TThemeManager где найти? В D6 нет. Это отдельный компонент?

2 Vit@ly
Заморачиваться с имейджами не хотелось бы ещё больше, чем с наследованием :o) Больно уж несимпатично получается...

2 clickmaker
Ладно, попробую наследоваться по вашему совету, спасибо. Но если есть попроще путь, с радостью выслушаю :o)


 
Экспериментатор   (2005-01-07 12:17) [6]

Лучше используй ThemeManager
это самый простой путь.
поищи например на torry


 
Gero ©   (2005-01-07 12:30) [7]

ThemeManager, конечно использовать можно, но это:

Новые глюки
Новые тормоза
~100кб к размеру exe

Если все это не имеет значения, то действительно, ThemeManager то, что нужно.
Если же проект серьезный, то лучше использовать UxTheme.pas и все рисовать самому.

TThemeManager можно взять здесь:
http://www.google.com/search?q=TThemeManager


 
Den303 ©   (2005-01-08 02:27) [8]

Проект серьёзный, наверное попробую UxTheme.pas и ручками. Правда на работу только 11-го, так что буду делать позже :o)
За TThemeManager спасибо, дома попользую, а на работе за новый компонент и увеличение дистрибутива спасибо не скажут :o(

Ветка закрыта. Всем большое спасибо!



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

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
14-1104797793
Matveyev
2005-01-04 03:16
2005.01.23
Посмотрите программу


4-1102363223
z_man
2004-12-06 23:00
2005.01.23
Как поместить программу в автозагрузку?


6-1098734082
Rander
2004-10-25 23:54
2005.01.23
TWebBrowser и User-agent ???


3-1103613496
Black
2004-12-21 10:18
2005.01.23
Как сохранить содержание Tmemo в базу?


14-1104841168
Dimedrol
2005-01-04 15:19
2005.01.23
Как ставить SPacks на NT4 ?