728x90
반응형
MFC에서 윈도우 창의 캡션을 변경하려면, 첫 번째로는 CMainFrame::PreCreateWindow에서 CREATESTRUCT를 변경하는 방법이 있다.
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
cs.style &= ~(FWS_ADDTOTITLE); // 캡션이 파일 읽어오기 등으로 바뀌지 않도록 변경
cs.lpszName = _T("MY APPLICATION"); // 원하는 캡션 작성
return TRUE;
}
두 번째는 그냥 CMainFrame에서 SetWindowText(캡션명)을 호출하면 된다. CMainFrame이 아니라 다른 곳에서 변경하고 싶다면 아래와 같이 하면 된다.
CMainFrame* pFrame = (CMainFrame *)AfxGetMainWnd(); // CMainFrame의 포인터를 받아와서
pFrame->SetWindowText(L"MY APPLICATION"); // 캡션명을 변경한다.
MDI에서 자식윈도우의 캡션을 변경하고 싶다면, CMainFrame 대신에 CChildFrame에서 하면 된다.
CMainFrame* pMain = (CMainFrame*)AfxGetApp()->m_pMainWnd;
CChildFrame* pWnd = (CChildFrame*)pMain->MDIGetActive();
pWnd->SetWindowText(L"MY APPLICATION"); // 캡션명을 변경한다.
728x90
반응형
'Program Language > API | MFC' 카테고리의 다른 글
[MFC] MDI에서 시작 시 새 창 방지 코드 (0) | 2021.05.20 |
---|---|
[MFC] MDI에서 새창 열기 (0) | 2021.05.20 |
[MFC] MFC 컨트롤 서브클래싱 하기 (0) | 2021.05.19 |
[MFC] CDockingPane Class 사용하기 (0) | 2021.05.18 |
[MFC] Control 깜빡임 방지 코드 (0) | 2021.04.22 |