1、Tstringgrid控件,当鼠标移到某一Cell,怎样才能显示hint,hint的内容是该Cell的内容?
2、上面的问题如果换成DBGrid控件,如何实现?
3、上面两个问题解决后,如何能让鼠标一直有hint?
谢谢大家了!

解决方案 »

  1.   

    1, 3如下,2与其类似,先要设其ShowHint为True,显示位置你可以自己设定
    sg: TStrignGrid;
    ...
    procedure TfrmStrGrid.sgMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    var
      i, j: Integer;
    begin
      sg.MouseToCell(X, Y, i, j);
      if (i = -1) or (j = -1) then Exit;
      sg.Hint := sg.Cells[i, j];
      Application.Activatehint(ClientToScreen(Point(X + 25, Y - 10)));
    end;
      

  2.   

    重载Grid代码,拦截CM_HINTSHOW消息。里面有一个结构指针的,可以设置很多的内容。具体的你自己侃侃而谈帮助吧。