Bitmap
-
Hi Leute,
ich habe zwei Fragen zum folgenden Quellcode, der eine Bitmap in einem Windows-
fenster ausgibt:#include "stdafx.h"
#include <stdio.h>
#include <afxwin.h>class CMeinHauptfenster : public CFrameWnd {
public:
CMeinHauptfenster();
protected:
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP();};
CMeinHauptfenster::CMeinHauptfenster() {
Create(NULL, "",WS_SYSMENU, rectDefault);};
void CMeinHauptfenster::OnPaint() {CBitmap *pMeinBild = new CBitmap;
pMeinBild->LoadBitmap(IDI_ICON1);BITMAP bm;
CPaintDC dc(this);
CDC MeinDC;
MeinDC.CreateCompatibleDC(NULL);
MeinDC.SelectObject(pMeinBild);
pMeinBild->GetObject(sizeof(bm), &bm);dc.BitBlt(10,10, bm.bmWidth, bm.bmHeight, &MeinDC,15,15,SRCCOPY);
}
BEGIN_MESSAGE_MAP(CMeinHauptfenster,CFrameWnd)
ON_WM_PAINT()
END_MESSAGE_MAP()class CMeineAnwendung : public CWinApp {
public:
virtual BOOL InitInstance();
};BOOL CMeineAnwendung::InitInstance() {
m_pMainWnd = new CMeinHauptfenster();
m_pMainWnd -> ShowWindow(SW_SHOW);return TRUE;
}
CMeineAnwendung Programm;/////////////////////////////////////////////////////////////////////
1. Frage:
Wie wird eine zweite Bitmap über der alten erzeugt(ich hatte bei der zweiten
an eine kleinere gedacht, also so, das die erste noch zu sehen ist).2.Frage:
Wie spreche ich die Parameter von der Funktion BitBlt separat an?(die
Funktion BitBlt habe ich im Quellcode makiert.)Vielen Dank schon mal im Vorraus!
Gruß Crabbe
-
siehe: http://www.henkessoft.de/mfc_einsteigerbuch_kapitel4.htm
dort z.B. transparente Bitmap-Darstellung.