이 질문은 related to this one입니다.CToolTipCtrl의 도구 rect를 수정하는 방법?
int CMyPane::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDockablePane::OnCreate(lpCreateStruct) == -1)
return -1;
const DWORD dwStyle = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN |
TVS_CHECKBOXES | TVS_DISABLEDRAGDROP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT |
TVS_INFOTIP | TVS_NOHSCROLL | TVS_SHOWSELALWAYS;
if(!m_tree.Create(dwStyle, m_treeRect, this, TREECTRL_ID)) { return -1; }
m_pToolTip->AddTool(&m_tree, LPSTR_TEXTCALLBACK, &m_treeRect, TREECTRL_ID);
m_tree.SetToolTips(m_pToolTip);
return 0;
}
나는 기본값 원하기 때문에 옵션의 모든 매개 변수와 AddTool()를 호출해야하십시오 CDockablePane 파생 클래스에서
난에서 OnCreate()에서 도구 설명을 추가하는 대한 CTreeCtrl의 구성원이 CDockablePane으로 작업하지 마십시오.m_treeRect
은 CTor에서
(0, 0, 10000, 10000)
으로 설정된
CRect
구성원입니다. 이것은 정말로 추악합니다.
m_tree
의 크기가 변경 될 때마다 도구의 사각형을 조정하고 싶습니다.
그래서 CMyPane::OnSize()
에서 몇 가지 물건을 시도했지만 아무도 일하지 :
- 는 다음이 의미하는 방법
m_pToolTip->SetToolRect()
를 호출 SetToolInfo()
CToolInfo
의 RECT 멤버를 수정 m_pToolTip->GetToolInfo()
를 호출 수행 할? 당신이 코드의 차이 무엇을 void CMyPane::OnSize(UINT nType, int cx, int cy)
{
CDockablePane::OnSize(nType, cx, cy);
if (m_pToolTip != NULL)
{
m_pToolTip->DelTool(&m_tree, TREECTRL_ID);
CRect treeRect;
m_tree.GetClientRect(treeRect);
m_pToolTip->AddTool(&m_tree, LPSTR_TEXTCALLBACK, &treeRect, TREECTRL_ID);
}
}
을 게시 것 : – foraidt