Отображение рисунка
От: PlavA Россия  
Дата: 14.12.04 10:04
Оценка:
Помогите пожалуйста, нужно чтобы по нажатию кнопки в окне отображалось содержимое файла (*.jpg, *.bmp). Как бы это проще сделать в Visual Studio 6.0???
Re: Отображение рисунка
От: nii_im_b Мухосранск  
Дата: 14.12.04 10:30
Оценка:
Здравствуйте, PlavA, Вы писали:

PA>Помогите пожалуйста, нужно чтобы по нажатию кнопки в окне отображалось содержимое файла (*.jpg, *.bmp). Как бы это проще сделать в Visual Studio 6.0???


если есть gdiplus.dll...

#include <atlimage.h>

CImage img;//объявить как переменную класса

void CWndClass::OnSmthButton()
{
img.Load("file_path");
Invalidate();
}

void CWndClass::OnPaint()
{
HDC dc=CreateCompatibleDC(GetDC()->m_hDC)//можно NULL
img.StretchBlt(dc, xDest, yDest,nDestWidth,nDestHeight,SRCCOPY);
BitBlt(GetDC()->m_hDC...dc...);
}

без проверок.
Re: Отображение рисунка
От: Imbecile Россия  
Дата: 14.12.04 11:52
Оценка:
Здравствуйте, PlavA, Вы писали:

Во-первых, нужно создать обработчик кнопки, надеюсь с этим проблем нет.
Создать его можно ClassWizard'ом или ручками.

В нем написать что-то типа:
need_to_draw_picture = true;

Во-вторых, рисование картинки:

Где-то в начале:
  #include "atlimage.h"


В Draw:
  if(need_to_draw_picture)
  {
    CImage pic;
    HRESULT hr = pic.Load(path /*Путь к картинке*/);

    if(SUCCEEDED(hr))
    {
      pic.Draw(pDC->GetSafeHdc(), 9,10, pic_size.cx, pic_size.cy);
    }
  }


Но для этого нужна поддержка ATL в приложении,
а вообще на тему рисования картинок статья на RSDN где-то была.

P.S. есественно need_to_draw_picture нужно определить и в конструкторе C..View
инициализировать его false'ом
Re: Отображение рисунка
От: MicVit  
Дата: 14.12.04 11:59
Оценка:
Здравствуйте, PlavA, Вы писали:

PA>Помогите пожалуйста, нужно чтобы по нажатию кнопки в окне отображалось содержимое файла (*.jpg, *.bmp). Как бы это проще сделать в Visual Studio 6.0???


Самое простое:
использовать CListCtrl и в нем:
CListCtrl::SetBkImage
Re[2]: Отображение рисунка
От: Аноним  
Дата: 14.12.04 13:08
Оценка:
Здравствуйте, nii_im_b, Вы писали:

При составлении диалогового окна можно вставить область рисунка, как сделать, чтобы именно в него этот рисунок отобразился.
Re[2]: Отображение рисунка
От: PlavA Россия  
Дата: 18.12.04 09:37
Оценка:
Здравствуйте, Imbecile, Вы писали:

>Но для этого нужна поддержка ATL в приложении,

I>а вообще на тему рисования картинок статья на RSDN где-то была.

Буду очень благодарна, если поделитесь atlimage.h, а то у меня его нет
Re[3]: Отображение рисунка
От: Imbecile Россия  
Дата: 20.12.04 09:56
Оценка:
Здравствуйте, PlavA, Вы писали:

>>Но для этого нужна поддержка ATL в приложении,

I>>а вообще на тему рисования картинок статья на RSDN где-то была.

PA>Буду очень благодарна, если поделитесь atlimage.h, а то у меня его нет


Я на мыло выслал, но думаю этим не обойдется нужно вся ATL высылать, а это накладно.

По идее в VS .Net в визарде есть кнопка Add ATL support to MFC.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.