Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Иконка на кнопке 
:(
    Опции темы
ShurikA
Дата 25.7.2006, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Когда создаётся кнопка через визард (VS2005), в настройке кнопки есть "Icon". 
На сколько я понимаю это даёт возможность присобачить иконку к кнопке.  Как? 


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
tigger
Дата 26.7.2006, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 456
Регистрация: 30.4.2005

Репутация: 3
Всего: 4



Используй кнопка.SetIcon( ::LoadIcon(NULL, IDI_QUESTION) ); 


--------------------
user posted image
PM MAIL   Вверх
ShurikA
Дата 26.7.2006, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Цитата(tigger @  25.7.2006,  23:24 Найти цитируемый пост)
Используй кнопка.SetIcon( ::LoadIcon(NULL, IDI_QUESTION) ); 

дге? Она же создана визардом 


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
ShurikA
Дата 26.7.2006, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Попробовал я сделать вот так:
Код

(CButton *) m_wControlBar.GetDlgItem(IDC_BUTTON_TEXT)->SetIcon(::LoadIcon(NULL, (LPCSTR)IDI_ICON1), FALSE);

не работает... кнопка остаётся пустая 


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
Pulse69
Дата 26.7.2006, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 28.4.2006
Где: Хабаровск

Репутация: нет
Всего: 10



Вот тут может быть проблема.

Код

::LoadIcon(NULL, (LPCSTR)IDI_ICON1)


Если в LoadIcon первый параметр - NULL, то загружается иконка не из ресурсов, а стандартная. Насколько я помню, стандартной иконки IDI_ICON1 нет.
Попробуй написать LoadIcon( AfxGetInstanceHandle(),  MAKEINTRESOURCE( IDI_ICON1) ) 
--------------------
Ctrl+Alt+Reset 
PM MAIL   Вверх
ShurikA
Дата 26.7.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Цитата(Pulse69 @  26.7.2006,  11:38 Найти цитируемый пост)
LoadIcon( AfxGetInstanceHandle(),  MAKEINTRESOURCE( IDI_ICON1) ) 

Тоже самое... 


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
Rapalex
Дата 26.7.2006, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: 6
Всего: 8



Свои иконки нужно грузить так:
Код

AfxGetApp()->LoadIcon(IDI_ICON1);
 


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
ShurikA
Дата 26.7.2006, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Так тоже не работает:
Код

HICON m_hIcon;
m_hIcon = AfxGetApp()->LoadIconA(IDI_ICON1);
(CButton *) m_wControlBar.GetDlgItem(IDC_BUTTON_TEXT)->SetIcon(m_hIcon, FALSE);
  

Это сообщение отредактировал(а) ShurikA - 26.7.2006, 15:10


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
Pulse69
Дата 27.7.2006, 04:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 28.4.2006
Где: Хабаровск

Репутация: нет
Всего: 10



А у меня вот так работает

Код

    ::SetWindowLong( m_MyBtn.GetSafeHwnd(), 
        GWL_STYLE, 
        ::GetWindowLong( m_MyBtn.GetSafeHwnd(),GWL_STYLE) | BS_ICON );
     m_MyBtn.SetIcon( ::LoadIcon( NULL, IDI_QUESTION ) );


SetButtonStyle что-то не пашет. 
--------------------
Ctrl+Alt+Reset 
PM MAIL   Вверх
ShurikA
Дата 27.7.2006, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Так ладно, давайте по другому:
У кнопки можно установить ownerdraw, при этом кнопка просто пропадает.
Как дальше с этим можно работать?

и ещё один вопрос:
Код

(CButton *) m_wControlBar.GetDlgItem(IDC_BUTTON_TEXT)

правильный ли это способ получить обьект кнопки? 


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0495 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.