![]() |
|
|
![]()
|
|
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: нет Всего: 52 |
Создал кнопку обычную. У неё есть свойство Icon. Если оно включено, то у кнопки есть иконка, но нет текста, а мне надо, чтобы был и итекст и иконка. КАк такое сделать?
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Кажется, только руками. Т.е. через OwnerDraw.
-------------------- ... |
|||
|
||||
| keksus |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 29.9.2006 Репутация: нет Всего: нет |
Есть куча абсолютно бесплатных библиотек и просто исходников классов, в которых это реализовано. Поищи на codeguru или просто в гугле
|
|||
|
||||
| Damarus |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 671 Регистрация: 6.5.2006 Репутация: 6 Всего: 29 |
CButton::SetImageList Добавлено @ 10:33 Но только в XP. Добавлено @ 10:34 И выше. |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: нет Всего: 52 |
Damarus, первое что мне орёт компилер, так это то, что SetImageList - это не member CButton функции. При этом при написании кода, выдаёт его в списке. И ещё я не могу найти как работать с SetImageList
Я тут попробовал писать в DC кнопки: в OnPaint Воткнул -
Где m_Button1 - Это соответственно кнопка, а m_Image1 - Это картинка. Результат неясен, см. аттач. Почему картинка находится под кнопкой? Это сообщение отредактировал(а) Rickert - 6.10.2006, 04:07 Присоединённый файл ( Кол-во скачиваний: 13 )
Untitled_2.jpg 2,72 Kb-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: нет Всего: 52 |
Разобрался. Просто кнопка отрисовывалась раньше. Переопределили свой класс кнопки и туда засунул отрисовку в нужной последовательности. Всё пашет
Это сообщение отредактировал(а) Rickert - 6.10.2006, 06:55 -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
TransparentBlt - это функция не окна, а DC. В твоем коде ты вызываешь исходный вариант (из WinAPI).
В CImage тоже по идее есть для нее обертка. Почему у тебя не компилируется - наверно, что-то неправильно. Отсечение и пересчет координат должен делать руками. Кроме того в OnPaint надо делать так (кстати, это OnPaint кнопки?):
и рисовать в этом DC. По крайней мере, отсечение будет. Кстати, картинка великовата для кнопки: ты как ее расположить-то хочешь? Можно, конечно и сжать, но некрасиво будет. Лучше нарисовать нужного размера. -------------------- ... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |