2017년 4월 19일 수요일
2017년 4월 18일 화요일
MFC ListCtrl Header back color
1.1 CHeaderCtrl를 상속받은 클래스를 생성한다.
1.2 Class view에서 OnEraseBkgnd, OnNMCustomdraw를 추가한다.
1.3 OnEraseBkgnd는 return FALSE; 한다.
2.1 CListCtrl를 상속받은 클래스를 생성한다.
2.2 PreSubclassWindow()를 추가한다.
2.3 2.1에서 만든 클래스에 1.1에서 만든 크래스를 멤버 변수로 추가한다.
2.4 2.2함수에 m_listHeader.SubclassWindow(::GetDlgItem(m_hWnd, 0)); 요로코롬 추가한다.
3.1 1.2 에서 만든 OnNMCustomdraw() 함수에 그리기를 한다.
MyListHeader.h/MyListHeader.cpp
[참조]http://pingfan.egloos.com/7450045
1.2 Class view에서 OnEraseBkgnd, OnNMCustomdraw를 추가한다.
1.3 OnEraseBkgnd는 return FALSE; 한다.
2.1 CListCtrl를 상속받은 클래스를 생성한다.
2.2 PreSubclassWindow()를 추가한다.
2.3 2.1에서 만든 클래스에 1.1에서 만든 크래스를 멤버 변수로 추가한다.
2.4 2.2함수에 m_listHeader.SubclassWindow(::GetDlgItem(m_hWnd, 0)); 요로코롬 추가한다.
3.1 1.2 에서 만든 OnNMCustomdraw() 함수에 그리기를 한다.
MyListHeader.h/MyListHeader.cpp
[참조]http://pingfan.egloos.com/7450045
2017년 4월 17일 월요일
MFC Modeless delete
Ddialog를 지역변수로 Modeless로 생성할때 삭제를 하려면
1. OnClose()를 추가
CDialog::OnClose(); 요건 지움
void CTestDlg::OnClose()
{
// TODO: Add your message handler code here and/or call default
if( m_hWnd )
{
DestroyWindow();
}
//CDialog::OnClose();
}
2. PostNcDestroy()를 추가
void CTestDlg::PostNcDestroy()
{
// TODO: Add your specialized code here and/or call the base class
delete this;
CDialog::PostNcDestroy();
}
를 하면 됩니다.
1. OnClose()를 추가
CDialog::OnClose(); 요건 지움
void CTestDlg::OnClose()
{
// TODO: Add your message handler code here and/or call default
if( m_hWnd )
{
DestroyWindow();
}
//CDialog::OnClose();
}
2. PostNcDestroy()를 추가
void CTestDlg::PostNcDestroy()
{
// TODO: Add your specialized code here and/or call the base class
delete this;
CDialog::PostNcDestroy();
}
를 하면 됩니다.
피드 구독하기:
글 (Atom)