Вроде не перепутал, ну пройдёмся ещё разок.
Раз мыло давать не хочешь,
то держи здесь.
Значит так выбор проекта MFC Dialog - всё стандартно - я назвал диалог - class TestPictureChange. Те получил класс
class CTestPictureChangeDlg : public CDialog
После "показывания" диалога - вставляем picture control
ВАЖНО:
- дать ему отличный от
IDC_STATIC ID, я дал
IDC_BMP1 - Выбрать тип Bitmap
- Проинициаллизировать с первой картинкой (у меня две картинки
IDB_BITMAP1 и
IDB_BITMAP2)
это код Н файла
// TestPictureChangeDlg.h : Header-Datei
//
#if !defined(AFX_TESTPICTURECHANGEDLG_H__24AC3008_D8E1_4285_9EC1_884BB2143FA0__INCLUDED_)
#define AFX_TESTPICTURECHANGEDLG_H__24AC3008_D8E1_4285_9EC1_884BB2143FA0__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
/////////////////////////////////////////////////////////////////////////////
// CTestPictureChangeDlg Dialogfeld
class CTestPictureChangeDlg : public CDialog
{
public:
CTestPictureChangeDlg(CWnd* pParent = NULL);
//{{AFX_DATA(CTestPictureChangeDlg)
enum { IDD = IDD_TESTPICTURECHANGE_DIALOG };
CStatic m_bmp1; //}}AFX_DATA
//{{AFX_VIRTUAL(CTestPictureChangeDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV-Unterstützung
//}}AFX_VIRTUAL
protected:
HICON m_hIcon;
//{{AFX_MSG(CTestPictureChangeDlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnButton1(); //}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
#endif // !defined(AFX_TESTPICTURECHANGEDLG_H__24AC3008_D8E1_4285_9EC1_884BB2143FA0__INCLUDED_)
а это из СРР - я приведу только изменения отличные от "оригинальной версии", которую ты получаешь сразу после мастера (wizard)
void CTestPictureChangeDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CTestPictureChangeDlg)
DDX_Control(pDX, IDC_BMP1, m_bmp1); //}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CTestPictureChangeDlg, CDialog)
//{{AFX_MSG_MAP(CTestPictureChangeDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1) //}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CTestPictureChangeDlg::OnButton1()
{
CBitmap bmp2;
bmp2.LoadBitmap(IDB_BITMAP2);
m_bmp1.SetBitmap(bmp2);
}Вот собсно и всё - проверяй что не так.