我想实现frontpage中,鼠标移到每行或者每列的开头就出现箭头,所以做了如下操作:
在PreTranslateMessage中截获了mousemove的消息
void CHHtmlEditCtrl::MouseMove(UINT nFlags, CPoint point)
{
IHTMLDocument2 *pDoc;
GetDHtmlDocument(&pDoc);
IHTMLElement * pElement;
// 转换成客户区的坐标
//ScreenToClient(point);
//LPPOINT repoint;
//repoint->x = point.x;
ScreenToClient(&point);
HRESULT hr = pDoc->elementFromPoint(point.x,point.y,&pElement);
BSTR str;
pElement->get_tagName(&str);
CString tempstr = (CW2A)str;
if(tempstr =="TR"||tempstr == "TABLE")
{
// tr基本上不会被找到,只好奢望table
// 但是55555555555555,我发现无法获取当前table的位置
// 自然无从知道此时的鼠标到底在table的什么位置
// 晕倒,我该怎么办?
}
}

解决方案 »

  1.   

    一般情况下鼠标所在的都是TD,除非你把border设得很宽,看来只有GetParent直到得到TR或者TH,TBODY,TABLE……为止
    建议的解决方法……在上下文菜单中添加选择行/选择列选项……*%#·!*—%
      

  2.   

    555555555老大,你回的可真快,我的右键菜单真的已经很多了。
    就是想锦上添那么一朵小花,鼠标选择可以让我小小的虚荣心得到满足:)
    有没有办法通过pElement得到table的屏幕位置?
      

  3.   

    pElement就算向上推到了IHTMLTable,但是我还是没有办法获得其屏幕位置呀?