王咣生 发表于 2004-11-11 17:46:00

浮动窗体一例

浮动窗体一例:

王咣生 发表于 2004-11-11 18:55:00

回复

CListCtrl控件如何响应鼠标双击事件? 找到当前选择的Item?

zfbj 发表于 2004-11-11 19:03:00

NM_DBLClick事件。

王咣生 发表于 2004-11-11 19:17:00

回复

我想双击CListCtrl中的一项(Item), 返回ID值, 然后在AutoCAD中找回这个实体.


NM_DBLCLK 怎么用?

王咣生 发表于 2004-11-11 19:26:00

回复

谢谢zfbj版主,已经可以了,


BEGIN_MESSAGE_MAP(CChildDialog, CAcUiDialog)<BR>        //{{AFX_MSG_MAP(CChildDialog)<BR>        ON_WM_SIZE()<BR>        ON_WM_CLOSE()


        ON_BN_CLICKED(ID_BUTTON_PICK, OnPickButtonClick)<BR>        ON_BN_CLICKED(ID_BUTTON_VERIFY, OnVerifyButtonClick)


        <FONT color=#0099ff>ON_NOTIFY(NM_DBLCLK, IDC_LIST_VERIFY, OnDblClick)</FONT><BR>        //}}AFX_MSG_MAP<BR>END_MESSAGE_MAP()


void CChildDialog::OnDblClick(NMHDR* k, LRESULT* j)<BR>{<BR>        int nItem, nFlags;<BR>        char szTest;


        nFlags = LVNI_SELECTED;<BR>        nItem = m_listCtrlVerify.GetNextItem(-1, nFlags);<BR>        if (nItem != -1)<BR>        {<BR>                sprintf(szTest, "Selected Item %d", nItem);<BR>                AfxMessageBox(szTest);<BR>        }<BR>}

zfbj 发表于 2004-11-11 22:50:00

没用HitTest函数吗?


一般来说用这个函数判断双击位置比较好。

王咣生 发表于 2004-11-12 05:07:00

回复

从来没有用过, 你不说的话我不知道什么时候才会学到它! 如果总能找到它的替代者, 也许这辈子与它无缘.

amwwcwujqw 发表于 2004-11-16 11:20:00

<A name=67569><FONT color=#000066><B>zfbj</B></FONT></A> 版主,能讲一讲HitTest()函数的用法吗?


谢谢!

王咣生 发表于 2004-11-16 12:19:00

回复

在classwizard中加上控件的NM_DBCLICK消息<BR>在消息处理函数内添加如下代码:


CPoint pt;<BR>::GetCursorPos(&amp;pt);<BR>m_list.ScreentoClient(&amp;pt);<BR>int nItem = m_list.HitTest(pt);<BR>if(nItem != -1)<BR>{<BR>                                AfxMessageBox(m_list.GetItemText(nItem,0));<BR>}<BR>
页: [1]
查看完整版本: 浮动窗体一例