VC++6.0 사용자 정의 단추, 제목 없는 대화상자 드래그 방법

2014 단어 vc++
VC++6.0 사용자 정의 단추, 제목 없는 대화상자 드래그 방법
 
사용자 지정 버튼
먼저 CButton 기반 CCustomButton 클래스를 생성하여 클래스에 대한 가상 함수인 DrawItem 코드를 다음과 같이 추가합니다.
void CCustomButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)

{

  // TODO: Add your code to draw the specified item  CRect rect;

    GetClientRect(rect);  CDC dc;

    dc.Attach(lpDrawItemStruct->hDC);

    int x,y,r;  

    x=rect.Width()/2;

    y=rect.top;  r=rect.Height()/2;

    dc.Ellipse(0,0,rect.Width(),rect.Height());

    dc.DrawText(TEXT(""),rect,DT_CENTER|DT_VCENTER|DT_SINGLELINE);

}

그런 다음 버튼을 추가하여 OwnerDraw로 속성을 수정하고 CCustomButton 변수를 연결합니다.그리고 사용자 정의 단추를 그릴 수 있습니다.
 
제목이 없는 대화상자를 드래그하는 방법
예: 이 메서드를 추가할 대화상자에 WM 추가LBUTTONDOWN 메시지 함수에서 WM 보내기SYSCOMMAND 메시지, 코드는 다음과 같습니다.
void CLkDlg::OnLButtonDown(UINT nFlags, CPoint point)

{  

    // TODO: Add your message handler code here and/or call default

    // ::SendMessage();

    ::SendMessage(GetSafeHwnd(),WM_SYSCOMMAND,SC_MOVE+HTCAPTION,0);

    CDialog::OnLButtonDown(nFlags, point);

}

좋은 웹페이지 즐겨찾기