понедельник, 29 июня 2009 г.

Не знаешь “куда вставлять” – погугли!

Поиск в гугле в очередной раз повеселил

Куда вставлять

 

 

 

 

 

 

 

 

Как видим оказывается в России живет 1,5 миллиона непорочных рыцарей джедаев!!! О Россия ты не перестаешь меня удивлять…..

среда, 24 июня 2009 г.

Fantasy

Недавно решил почитать что-нибудь с фэнтези или фантастики и набрел на очень неплохую библиотеку посвященную оному
fantasy-worlds.ru

пятница, 12 июня 2009 г.

The Taskbar button

Я уж грешным делом было подумал что близок то момент, когда наконецто удастся почить на ларах! но винда снова вернула меня в суровую реальность.... 
Есть модальный диалог(главным окном оный не является) для отображение прогресса выполнения некого внутреннего скрипта приложения. Возникла необходимость при сворачивании этого диаложика на Taskbar-e создать кнопочку, на которой бы показывался текущий прогрес в процентах, а при розвертывании удалять. 
На первый взгляд выглядит все очевидно. Получаем указатель на ITaskbarList:

CComPtr < ITaskbarList > tbl;
HRESULT hr = tbl.CoCreateInstance(CLSID_TaskbarList); 
if (SUCCEEDED(hr))
 hr = tbl->HrInit();

Добавляем кнопочку
 
tbl->AddTab(hDialog);

А когда она нам не нужна удаляем

tbl->DeleteTab(hDialog);

Проблему я заметил не сразу... Оказалось что при изменении тайтла диалога, текст кнопки не апдейтится! 
Выручил Spy++. Сровняв стили окон где была рабочая кнопка и моего диалога - корень зла был успешно обнаружен. Как оказалось текст кнопки на Taskbar-e обновляется только в том случае если у окна с которым она связана установлен стиль WS_EX_APPWINDOW. 
Вот такие вот делы.... 
Установил быстренько стиль своему диаложику и .... Ура все заработало! Кнопка начала апдейтиться вместе с тайтлом диалога.