この質問はrelated to this oneです。 CDockablePane派生クラスでCToolTipCtrlのツール矩形を変更する方法は?
私は(OnCreate関数にツールヒントを追加しているためCTreeCtrlのメンバを持っている):
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で作業します。
m_treeRect
は、CTorの(0, 0, 10000, 10000)
に設定されたCRect
メンバです。これは本当に醜いです。
m_tree
のサイズが変更されるたびにツールの矩形を調整したいと思います。
だから私はCMyPane::OnSize()
にいくつかのものを試してみましたが、それのどれも働いた:
- が、それが意味しているどのように
m_pToolTip->SetToolRect()
を呼び出すSetToolInfo()
CToolInfo
のRECTメンバーを変更m_pToolTip->GetToolInfo()
を呼び出します行われなければ?
あなたが投稿したコードの違いは何を?私はそれを見ない... – foraidt