Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 602
от 30.08.2007, 17:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 297, Экспертов: 40
В номере:Вопросов: 1, Ответов: 1


Вопрос № 99593: Искал как можно рисовать на форме иконки файлов, папок, дисков (как в Windows) нашел функцию SHGetFileInfo. Использую так: (1) hImage = SHGetFileInfo(Tg(i).Path, ByVal 0&, udtFI, Len(udtFI), SHGFI_SYSICONINDEX Or SHGFI_LARGEICON) (2) ImageLi...

Вопрос № 99.593
Искал как можно рисовать на форме иконки файлов, папок, дисков (как в Windows) нашел функцию SHGetFileInfo. Использую так:
(1) hImage = SHGetFileInfo(Tg(i).Path, ByVal 0&, udtFI, Len(udtFI), SHGFI_SYSICONINDEX Or SHGFI_LARGEICON)
(2) ImageList_Draw hImage, udtFI.iIcon, Form1.hdc, Tg(i).PosX, Tg(i).PosY, ILD_TRANSPARENT
Все работает - рисует, но откомпиллированная программа начинает жрать памяти где-то на 1,2 mb больше (еще и виртуальной где-то 600 кб). Закомментировав строку (1) и скомпилировав вновь - все нормально. Попробовал так:
DestroyIcon hImage ' - ничем не помагло. Помогите, я просто не понимаю почему так и что делать, вроде рисует на форме, поверх уже нарисованного, куда деются ресурсы?
Отправлен: 24.08.2007, 23:28
Вопрос задал: Adisan (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 7)

Отвечает: Залетин Виталий Викторович (мь!тарь)
Здравствуйте, Adisan!

Попоробуйте использовать АПИ-функции LoadIcon, LoadImage, DrawIcon, DrawIconEx (особенно ее) (все они есть в стандартном АПИ-вьюере, поставляемом с бейсиком).

Почитайте по следующим ссылкам:
http://www.vbnet.ru/forum/show.aspx?id=53427&page=5
http://support.microsoft.com/kb/298144/ru
http://www.microsoft.com/Rus/Msdn/Activ/MSVB/Archive/WindowsAPI/Control/436.mspx

---------
Учиться никогда не поздно. Особенно программированию!
Ответ отправил: Залетин Виталий Викторович (мь!тарь) (статус: Студент)
Ответ отправлен: 26.08.2007, 15:55


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.58 от 30.08.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное