Sarangnamu.net June 17, 2003
DetailMiniView - ¸®½ºÆ® ¼±Åýà ³»¿ëÀ» º¸¿©ÁÖ´Â ÀÛÀº â.
Last Modify : 27 December, 2010(01:54)
// DetailListView.cpp : implementation file
//
// DATE : June 27, 2006
// CODER : Kurome (aucd29@gmail.com)
//
//
// ---------------------------------------------------------------------
// NOTE : July 11, 2006
// ---------------------------------------------------------------------
// * ÅøÆÁÀ» ´ë½ÅÇÒ ³à¼®À» Çϳª ¸¸µé¾î¾ß Ç߱⿡ ÅøÆÁÀ̶û ºñ½º²¿·ÒÇÏÁö¸¸.
// ¸ÖƼ ¶óÀο¡´Ù°¡ ´Ù¼Ò ¸ÚÁö°Ô ½ºÅ©·Ñ ¹Ùµµ »ý±â´Â ¹¦ÇÑ ³à¼®À» Çϳª
// ¸¸µé¾ú´Ù.. ³ª¸§´ë·Î ¸¸Á·ÇÑ´Ù.
//
// ---------------------------------------------------------------------
// NOTE : August 8, 2006
// ---------------------------------------------------------------------
// * µðÀÚÀÎ ¿äÃ»ÇØ¼ ¹Þ°í -_- ¹ö±× »ý±ä ¹öưÀ» ¾î¶»°Ô ó¸®Çصµº¸·Ï ÇÏÀÚ.
// * µðÀÚÀο¡ ¸Â°Ô º¯°æ ¿Ï·á
#include "stdafx.h"
#include "SMS_WIZARD.h"
#include "DetailListView.h"
#include "memdc.h"
// CDetailListView dialog
IMPLEMENT_DYNAMIC(CDetailListView, CDialog)
CDetailListView::CDetailListView(CWnd* pParent /*=NULL*/)
: CDialog(CDetailListView::IDD, pParent)
, m_szDetailList(_T(""))
, m_ptCurrent(0)
, m_szDate(_T(""))
, m_szPhoneNumber(_T(""))
{
m_hBrush = CreateSolidBrush(RGB(208, 235, 245));
}
CDetailListView::~CDetailListView()
{
}
void CDetailListView::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_BTN_DETAIL_CLOSE, m_btnDetailClose);
}
BEGIN_MESSAGE_MAP(CDetailListView, CDialog)
ON_WM_LBUTTONDOWN()
ON_WM_CTLCOLOR()
ON_BN_CLICKED(IDC_BTN_DETAIL_CLOSE, &CDetailListView::OnBnClickedBtnDetailClose)
ON_WM_PAINT()
ON_WM_ERASEBKGND()
END_MESSAGE_MAP()
// CDetailListView message handlers
BOOL CDetailListView::OnInitDialog()
{
CDialog::OnInitDialog();
int cxFullScreen = GetSystemMetrics(SM_CXFULLSCREEN);
int cyFullScreen = GetSystemMetrics(SM_CYFULLSCREEN);
if (cxFullScreen < (m_ptCurrent.x + 245))
{
m_ptCurrent.x -= (265 - (cxFullScreen - m_ptCurrent.x));
}
if (cyFullScreen < (m_ptCurrent.y + 203))
{
m_ptCurrent.y -= (223 - (cxFullScreen - m_ptCurrent.y));
}
MoveWindow(m_ptCurrent.x, m_ptCurrent.y + 20, 245, 203);
CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDT_DETAIL_LIST);
pEdit->SetWindowText(m_szDetailList);
if (pEdit->GetLineCount() > 12)
{
pEdit->ShowScrollBar(1);
}
CStatic* pStatic;
pStatic = (CStatic*)GetDlgItem(IDSTC_DETAIL_DATE2);
pStatic->SetWindowText(m_szDate);
pStatic = (CStatic*)GetDlgItem(IDSTC_DETAIL_PHONENUM2);
pStatic->SetWindowText(m_szPhoneNumber);
//pEdit->set
m_btnDetailClose.SetSkin(IDB_BTN_DETAIL_EXIT, IDB_BTN_DETAIL_EXIT, IDB_BTN_DETAIL_EXIT, 0, 0, IDB_BTN_DETAIL_EXIT_MASK, 0, 0, 0);
// ½ºÅ©·Ñ ¹Ù
//SkinWndScroll(&m_listMemberList,m_hBmpScrollBar);
// À©µµ¿ì Àý´Ü -_-;
CRect rect;
GetClientRect(&rect);
CRgn rgn;
rgn.CreateRoundRectRgn(0, 0, rect.right+1, rect.bottom+1, 8, 8);
SetWindowRgn(rgn, true);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDetailListView::SetString(CString szDate, CString szPhoneNumber, CString szMessage, CPoint* pPoint)
{
m_szDetailList = szMessage;
m_ptCurrent = *pPoint;
m_szDate = szDate;
m_szPhoneNumber = szPhoneNumber;
}
void CDetailListView::OnLButtonDown(UINT nFlags, CPoint point)
{
CDialog::OnLButtonDown(nFlags, point);
}
LRESULT CDetailListView::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
LRESULT nHit;
switch(message)
{
case WM_NCHITTEST:
nHit = DefWindowProc(message,wParam,lParam);
switch(nHit)
{
case HTCLIENT:
nHit = HTCAPTION;
break;
}
return nHit;
}
return CDialog::WindowProc(message, wParam, lParam);
}
HBRUSH CDetailListView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd->GetDlgCtrlID() == IDSTC_DETAIL_DATE ||
pWnd->GetDlgCtrlID() == IDSTC_DETAIL_PHONENUM)
{
CFont font;
font.CreateFont(12, 0, 0, 0, FW_BOLD, FALSE, FALSE, 0, 0, 0, 0, 0, 0, L"Tahoma");
CFont *Oldfont = (CFont*) pDC->SelectObject(&font);
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
else if(pWnd->GetDlgCtrlID() == IDSTC_DETAIL_DATE2 ||
pWnd->GetDlgCtrlID() == IDSTC_DETAIL_PHONENUM2)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
else if (pWnd->GetDlgCtrlID() == IDC_EDT_DETAIL_LIST)
{
pDC->SetBkMode(TRANSPARENT);
return m_hBrush;
}
return hbr;
}
void CDetailListView::OnBnClickedBtnDetailClose()
{
OnOK();
}
void CDetailListView::OnPaint()
{
CPaintDC dc(this); // device context for painting
// º°·Î ºÎÇÏ ¾È°É¸®°ÚÁö? -_-?
CRect rect;
CPen myPen;
CBrush myBrush;
GetClientRect(&rect);
CMemDC mDC(&dc, &rect);
myPen.CreatePen(PS_SOLID, 1, RGB(122, 176, 199));
mDC.SelectObject(&myPen);
myBrush.CreateSolidBrush(RGB(208, 235, 245));
mDC.SelectObject(&myBrush);
mDC.FillSolidRect(&rect, RGB(208, 235, 245));
mDC.RoundRect(rect, CPoint(10, 10));
}
BOOL CDetailListView::OnEraseBkgnd(CDC* pDC)
{
return true;
}
coder : aucd29,
twitter : @aucd29
Today : 1,912
Total : 6,858,363
[RSS]