|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Фев 22, 2003 13:28:33 Проблема с сабжевой функцией. Под ХР стандартные иконки (например из Shell32.dll) отрисовываются неправильно (с чёрной окантовкой). Под остальными виндами (95/98/NT 4.0) всё ОК. Вот куски кода... ; == Загрузка Image List == invoke GetModuleHandle,_SHELLNAME mov [template2],eax invoke ImageList_Create,16,16,ILC_COLORDDB+ILC_MASK,4,4 mov [_Imagelist],eax invoke LoadImage,[template2],7,IMAGE_ICON,16,16,LR_DEFAULTCOLOR push eax invoke ImageList_AddIcon,[_Imagelist],eax call [DeleteObject] ; == Отрисовка Image List ^-) == invoke ImageList_Draw,[_Imagelist],0,[hDC],[rect.left],[rect.top],ILD_TRANSPA RENT При этой отрисовке, иконка неправильно рисуется в ХР. |
|
|
Дата: Фев 23, 2003 16:18:15 Только чтоб не оставлять тему без ответа. У меня нет XP... мало чем могу помочь. :) В отличие от 95/98/NT, в XP используется новый comctl32.dll v6 со "странными улучшениями" Image List'ов и др. контролов. Может дело в ILC_COLORDDB (попробуйте заменить на ILC_COLOR24), может иконки уже не device dependent в XP... А вы уверены, что чёрную окантовку рисует именно ImageList_Draw? Попробуйте снять скриншот и подсчитайте пиксели - возможно, что контур не входит в 16x16... |
|
|
Дата: Мар 15, 2003 11:04:42 В XP используется новый тип иконок 32bit (24 + 8) с прозрачностью. А твоя прога ету прозрачность не поддерживает. Решение: 1. Сделать подержку прозрачности 2. Закатать в ресурсы иконки из Win9x и загружать их оттуда. НЕ В ТЕМУ http://www.nnm.ru/pict/cell_phone.jpg http://www.nnm.ru/pict/ananas_sh.jpg http://www.nnm.ru/pict/xren.jpg http://www.nnm.ru/pict/o_baby.jpg http://www.nnm.ru/pict/m_19547.jpg http://www.nnm.ru/pict/mouse_mouse.gif http://www.nnm.ru/pict/natural_kak.jpg http://www.nnm.ru/pict/sigar1.jpg http://www.nnm.ru/pict/a39.jpg http://www.nnm.ru/pict/start_paper.jpg http://www.nnm.ru/pict/money_us.gif |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.076 |