'MFC Class'에 해당되는 글 5건

  1. 2010.01.19 MainFrame 윈도우 영역 조정
  2. 2010.01.19 영역 처리
  3. 2010.01.19 CRgn 윈도우 영역 설정
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	                       ....
	// TODO: 도구 모음을 도킹할 수 없게 하려면 이 세 줄을 삭제하십시오.
	m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
	EnableDocking(CBRS_ALIGN_ANY);
	DockControlBar(&m_wndToolBar);
	
	//원모양 영역 설정
	m_RgnRect1.CreateEllipticRgn(0,0,100,100);
	m_RgnRect2.CreateEllipticRgn(30,30,170,170);
	m_RgnTotal.CreateEllipticRgn(0,0,0,0);

	//두 영역 조합. 새로운 영역으로
	m_RgnTotal.CombineRgn(&m_RgnRect1,&m_RgnRect2,RGN_XOR);
	//조합된 영역을 메인프레임 윈도우영역으로 설정.
	SetWindowRgn((HRGN)m_RgnTotal,TRUE);
	
	return 0;
}

'MFC' 카테고리의 다른 글

GDI+ 설정  (0) 2010.01.20
Command routing  (0) 2010.01.20
MainFrame 윈도우 영역 조정  (0) 2010.01.19
영역 처리  (0) 2010.01.19
CRgn 윈도우 영역 설정  (0) 2010.01.19
간단한 Capture 프로그램  (0) 2010.01.19
Posted by hyunny82
2010.01.19 21:34
void CCRgnView::OnPaint()
{
        //알파블랜딩으로 출력
	CPaintDC dc(this);
	m_ImgSample.AlphaBlend(dc.m_hDC,0,0,50);

        //타원형 영역 설정
	CRgn Rgn;
	Rgn.CreateEllipticRgn(m_rectVisible.left,
		m_rectVisible.top,
		m_rectVisible.right,
		m_rectVisible.bottom);
	dc.SelectClipRgn(&Rgn);
	//영역부분만 출력
        m_ImgSample.BitBlt(dc.m_hDC,0,0);

}

int CCRgnView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	if (CView::OnCreate(lpCreateStruct) == -1)
		return -1;
	//초기화. 리소스 이미지 로드
	m_rectVisible=CRect(0,0,0,0);
	m_ImgSample.LoadFromResource(AfxGetInstanceHandle(),IDB_BITMAP1);

	return 0;
}

void CCRgnView::OnMouseMove(UINT nFlags, CPoint point)
{
         //버튼 눌려진 상태이면 주변 200픽셀 정도 지정 후 다시 그림.
	if(nFlags & MK_LBUTTON)
	{
		m_rectVisible=CRect(point.x-100,point.y-100,point.x+100,point.y+100);
		RedrawWindow();
	}

	CView::OnMouseMove(nFlags, point);
}
void CCRgnView::OnLButtonUp(UINT nFlags, CPoint point)
{
        //영역 초기화후 다시 그림.
	m_rectVisible=CRect(0,0,0,0);
	RedrawWindow();
	CView::OnLButtonUp(nFlags, point);
}

'MFC' 카테고리의 다른 글

Command routing  (0) 2010.01.20
MainFrame 윈도우 영역 조정  (0) 2010.01.19
영역 처리  (0) 2010.01.19
CRgn 윈도우 영역 설정  (0) 2010.01.19
간단한 Capture 프로그램  (0) 2010.01.19
CImage 클래스 이용  (0) 2010.01.19
Posted by hyunny82
void CCRgnView::OnPaint()
{
	CPaintDC dc(this); // device context for painting
	CRect rectLeft=CRect(50,50,250,150);
	CRect rectRight=CRect(250,50,450,150);
	dc.FillSolidRect(&rectLeft,RGB(192,0,0));
	dc.FillSolidRect(&rectRight,RGB(192,192,192));

	//영역설정
	CRgn rgnLeft,rgnRight;
	rgnLeft.CreateRectRgnIndirect(rectLeft);
	rgnRight.CreateRectRgnIndirect(rectRight);
	
	//폰트 설정
	LOGFONT lf;
	::ZeroMemory(&lf,sizeof(lf));
	lf.lfHeight=72;
	wsprintf(lf.lfFaceName,_T("%s"),_T("Arial Black"));
	CFont NewFont;
	NewFont.CreateFontIndirectW(&lf);
	CFont* pOldFont=dc.SelectObject(&NewFont);

	dc.SetBkColor(TRANSPARENT);

	//왼쪽 영역 선택 문자열 출력
	dc.SetTextColor(RGB(192,192,192));
	dc.SelectClipRgn(&rgnLeft);
	dc.TextOutW(60,65,_T("TEST STRING"));

	//오른쪽 영역 선택 문자열 출력
	dc.SetTextColor(RGB(192,0,0));
	dc.SelectClipRgn(&rgnRight);
	dc.TextOutW(60,65,TEXT("TEST STRING"));

	dc.SelectObject(pOldFont);
}

'MFC' 카테고리의 다른 글

MainFrame 윈도우 영역 조정  (0) 2010.01.19
영역 처리  (0) 2010.01.19
CRgn 윈도우 영역 설정  (0) 2010.01.19
간단한 Capture 프로그램  (0) 2010.01.19
CImage 클래스 이용  (0) 2010.01.19
Bitmap 출력  (0) 2010.01.19
Posted by hyunny82
이전버튼 1 2 이전버튼

티스토리 툴바