![]() |
|
|
![]()
|
|
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
Здравствуйте ВИНградовцы - пришел я к вам с кучей вопросов после многих поисков)
Решил вот попробовать свои силы в VC++2008 и не долго думая начал все с создания собственного интерфейса. Все шло норм пока не дошло к загрузке БМП с ресурсов. Bitmap->FromResource оказался не рабочим - пол ночи пытался загрузить и нарекал на незнание VC и работы с ресурсами - потом нашел на каком то форуме топик в котором говорилось что этот метод не особо дружит с *.bmp ,как оказалось - действительно FindResource и LoadResource прекрасно справились с задачей. Но всплыл другой момент - как передать HGLOBAL в bitmap?? Придумался (точнее в том же топике предлагалось)) - через MemoryStream-ы. Начал копать в их сторону( MemoryStream *ms = new... не хотел компалится)) Оказалось все не так как в BCB TMemoryStream-ы. Как вычитал что в VC++ нету совего класса и юзает он .NET . Но что за бред - не у всех же стоит .NET и что делать, таскать с собой библиотеки .NET или вообще юзеру сообщухи выдавать - "поставь себе .NET ,его мона скачать на микрософт.ком". Подскажите плз что можна придумать в этом варианте ПС в темы такое название, так как уверен что еще не раз придется спросить по дороге к завершению моего интерфейса. |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 1 Всего: 250 |
||||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Нет уж, темы создавай по существу, по мере возникновения вопросов. Правила форума запрещают все в кучу валить. Насчет bmp, ничего не поняла, какие такие FromResource и NET. Ты уверен, что на MFC пишешь? В MFC и WinAPi есть LoadBitmap, прекрасно работающий. Что касается HGLOBAL, возвращаемого LoadResourse, то это и есть по cути адрес буфера, содержащего битмап. Если приспичило читать прямо, то ищи в MSDN описание формата ресурса (не уверена, что там чистый bmp). Но у меня никогда такой надобности не возникало, т.к. LoadBitmap всегда справлялся. -------------------- ... |
|||
|
||||
| ASMatic |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
Извиняюсь за название темы
по поводу MFC - думаю что я не под ним пишу) - создаю прожект - ПОЛНОСТЬЮ чистый,там галочка есть такая при создании. Создаю окошко (форму) и все остальное вручную - не знаю почему, но так решил - с чистого листа Битмап гружу с помощью GDI :
Например я заюзаю апишку LoadBitmap - будет у меня она в памяти,а как вывести в окно тогда? я выводил:
там без поинтера на Image (Bitmap) - ничего не поделать. Когда я сделал: bmp->FromHBITMAP((HBITMAP) LoadResource( NULL, FindResource( NULL, "#102", RT_BITMAP )), NULL); ничего не грузит.Думал воспользоватся методом bmp->FromStream() - но с потоками напряг - без .NET (как я вычитал) - не канают..... Может я и ошибаюсь - подскажите тогда как создать MemoryStream в msvc. Или как вывести битмап в окно |
||||
|
|||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
ну что сказать - нашел как стримами без .НЕТ пользоватся - CreateStreamOnHGlobal. Но вот уже пошел на крайности и просто за капипастил себе в прожект чужие исходники - тож самое - не лоадит,в памяти есть моя картинка а в битмап не хочет грузить(( и к стати в памяти моя картинка получается без заголовка бмп-шного - эт так должно быть???
появился вариант - не правильно загружаю в ресурсы свой картинка. Подскажите как ето правильно делать Мой вариант: слева,где мона добавлять файлі в прожект есть Resource Files. Правая кнопка- >Add-> New Item->Resource File (.rs) добавил....потом клик-клик по тому файлу(как понял - редактируем) - ну и правая кнопочка - Add Resource->Bitmap ну и путь к файлу. вот так я это делаю) - мож чё не правльно и сильно смущает меня то что в памяти бмп без своего родненького заголовка. Указываю тип при загрузке (RT_BITMAP) но это же только в хорошо работающем LoadResource а не в Gdiplus::Bitmap.FromResource в котором не указывается тип загружаемого фойла,хотя и так понятно БИТМАП карочь мозги плывут - выхода не вижу,но папку с рисуночками рядом ложить - тоже бред полный подскажите ПЛЗ!!!!ПОЖАЙЛУСТАААААА |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
СПАСИБО! но кажется мне что действительно не правельно гружу в ресурсы(( - мож лучше в длл както подгрузить бмп и оттуда уже в память? - ну не знаю что уже думать....
после *image = Gdiplus::Image::FromStream(pStream); - в самом image -00000000000 сделал ктрлС-ктрлВ функции и вызвал её: PBITMAP bmp = new BITMAP; LoadImageFromResource( 102, RT_BITMAP, hInstance, (Image**) &bmp); -или чёт не правильно?? |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
извеняюсь я за тупость но тепрь оно даже в ресурсах не находит
HRSRC hResource = ::FindResource(hInst, MAKEINTRESOURCE(res), pType); возвращает 0( -жаль - что мало опыта,но прошу помочь мне понять все +) hInst - норм res - 0х00000066 pType - BITMAP |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
ASMatic, у вас проектик большой?
Можете выложить? -------------------- ????? ??, ??????? ?????. |
|||
|
||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
не вопрос - спасиб!!!
проектик пустой мона сказать. 2.7Мб и так долго сюда лился что решил на обменник залить: http://www.sendspace.com/file/bh1vct |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
А где там ссылка на скачивание?
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
снизу большими буковками DOWNLOAD)
на всякий там ливанул еще на рапиду.... http://rapidshare.com/files/247636172/temp.rar.html |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
ASMatic, извини что задержался с твоим проектиком. Работа понимаешь
Вот держи твой проект Увидишь, я написал
По-аналогии сделаешь
IDB_JPG_TEST, _T("JPG") -------------------- ????? ??, ??????? ?????. |
|||
|
||||
| ASMatic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 254 Регистрация: 14.3.2009 Репутация: нет Всего: 1 |
спасибки!!! ничего страшного - я тож не дождался и вырубился)
-ну чё могу сказать - с меня +,только пока я маленький)) - надо постить,постить. Думаю что скоро все изменится... мдааа - проанализировал - и так оно всегда,шаг в сторону и не работать еще раз спасибо!!! оч благодарен - все прекрасно работает!!! Это сообщение отредактировал(а) ASMatic - 23.6.2009, 17:47 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |