当前位置: 首页>>代码示例>>C++>>正文


C++ CDlgBase::SetTooltip方法代码示例

本文整理汇总了C++中CDlgBase::SetTooltip方法的典型用法代码示例。如果您正苦于以下问题:C++ CDlgBase::SetTooltip方法的具体用法?C++ CDlgBase::SetTooltip怎么用?C++ CDlgBase::SetTooltip使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CDlgBase的用法示例。


在下文中一共展示了CDlgBase::SetTooltip方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: SetTooltip

// 设置Tooltip
void CControlBase::SetTooltip(CControlBase* pControl, CString strTooltip, CRect rect, BOOL bControlWidth, int nTipWidth)
{
	// 如果找到了父对话框,则调用对话框的设置Tooltip函数
	CDlgBase* pDlg = GetParentDialog();
	if(pDlg)
	{
		pDlg->SetTooltip(pControl, strTooltip, rect, bControlWidth, nTipWidth);
		return;
	}

	// 如果找到父Popup窗口,则调用Popup窗口的设置Tooltip函数

	// 如果找到插件HostWnd,则调用插件HostWnd接口的设置Tooltip函数
	IDuiHostWnd* pIDuiHostWnd = GetParentIDuiHostWnd();
	if(pIDuiHostWnd)
	{
		int _nTipWidth = nTipWidth;
		if(bControlWidth)
		{
			_nTipWidth = pControl->GetRect().Width();
		}
		pIDuiHostWnd->SetTooltip(pControl->GetID(), strTooltip, rect, _nTipWidth);
		return;
	}
}
开发者ID:LLLiuWeicai,项目名称:webposclient,代码行数:26,代码来源:ControlBase.cpp

示例2: SetTabTooltip

// 设置Tab页签的Tooltip
void CDuiTabCtrl::SetTabTooltip(int nItem, CString strTooltip)
{
	CDlgBase* pDlg = GetParentDialog();
	if(pDlg && (m_nTipItem != nItem))
	{
		TabItemInfo* pTabInfo = GetItemInfo(nItem);
		BOOL bHaveDivTip = ((pTabInfo->pControl != NULL) && !pTabInfo->pControl->GetTooltip().IsEmpty());
		if(pTabInfo && (pTabInfo->bNeedTextTip || bHaveDivTip))
		{
			CRect rc = pTabInfo->rc;
			pDlg->SetTooltip(this, strTooltip, rc, TRUE);
		}else
		{
			pDlg->ClearTooltip();
		}

		m_nTipItem = nItem;
	}
}
开发者ID:Zhuguoping,项目名称:DuiVision,代码行数:20,代码来源:DuiTab.cpp

示例3: SetRowTooltip

// 设置行的Tooltip
void CDuiListCtrl::SetRowTooltip(int nRow, CString strTooltip)
{
	if((nRow < 0) || (nRow >= (int)m_vecRowInfo.size()))
	{
		return;
	}

	CDlgBase* pDlg = GetParentDialog();
	if(pDlg && ((m_nTipRow != nRow) || (m_nTipVirtualTop != m_nVirtualTop)))
	{
		ListRowInfo &rowInfo = m_vecRowInfo.at(nRow);
		if(rowInfo.bNeedTitleTip || rowInfo.bNeedContentTip)
		{
			CRect rc = rowInfo.rcRow;
			rc.OffsetRect(m_rc.left, m_rc.top-m_nVirtualTop);
			pDlg->SetTooltip(this, strTooltip, rc, TRUE);
		}
		m_nTipRow = nRow;
		m_nTipVirtualTop = m_nVirtualTop;
	}
}
开发者ID:anchowee,项目名称:DuiVision,代码行数:22,代码来源:DuiListCtrl.cpp

示例4: OnMouseMove

// 鼠标移动事件处理
BOOL CControlBase::OnMouseMove(UINT nFlags, CPoint point)
{
	if(!m_bIsVisible || !m_bRresponse) return false;
	
	OnMousePointChange(point);

	BOOL bRresponse = false;
	if(m_pControl)
	{
		if((m_pControl->PtInRect(point) && m_pControl->OnCheckMouseResponse(nFlags, point)) || m_bMouseDown)
		{
			if(m_pControl->OnMouseMove(nFlags, point))
			{
				return true;
			}
			return false;
		}
	}

	CControlBase * pOldControl = m_pControl;
	m_pControl =  NULL;

	if(!m_strTooltip.IsEmpty() && PtInRect(point) && OnCheckMouseResponse(nFlags, point))
	{
		// 如果当前控件有Tooltip,则添加一个Tooltip
		CDlgBase* pDlg = GetParentDialog();
		if(pDlg && (pDlg->GetTooltipCtrlID() != GetID()))
		{
			pDlg->SetTooltip(this, m_strTooltip, m_rc);
			pDlg->SetTooltipCtrlID(GetID());
		}
	}

	bRresponse = OnControlMouseMove(nFlags, point);

	if(!m_bMouseDown)
	{
		for (size_t i = 0; i < m_vecControl.size(); i++)
		{
			CControlBase * pControlBase = m_vecControl.at(i);
			if (pControlBase)
			{
				if(pControlBase->OnMouseMove(nFlags, point))
				{
					if(pControlBase->PtInRect(point))
					{
						m_pControl = pControlBase;
					}
					bRresponse = true;
				}
			}
		}


		if (pOldControl)
		{
			bRresponse = true;
		}

		if (m_pControl)
		{
			bRresponse = true;
		}
	}

	return bRresponse;
}
开发者ID:cubemoon,项目名称:DuiVision,代码行数:68,代码来源:ControlBase.cpp


注:本文中的CDlgBase::SetTooltip方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。