找回密码
 立即注册

QQ登录

只需一步,快速开始

sgs

中级会员

74

主题

219

帖子

637

积分

中级会员

积分
637

活字格认证微信认证勋章

sgs
中级会员   /  发表于:2013-11-1 09:35  /   查看:6225  /  回复:8
希望在c1flexgrid中,使用HitTestInfo获取鼠标点击的是row,cell,抑或是range,请问如何实现,谢谢!

8 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2013-11-1 09:55:00
沙发
回复 1楼sgs的帖子

this.c1FlexGrid1.HitTest()
用来获取当前鼠标是否击中Cell的,常用来返回当前鼠标Point信息的。

你的问题要获得当前鼠标选择的是:
1 Row?
2 Cell?
3 Range?

能在细化一下吗? 如举个例子。
回复 使用道具 举报
sgs
中级会员   /  发表于:2013-11-1 09:59:00
板凳
呵呵,我是新手,在学习中
回复 使用道具 举报
sgs
中级会员   /  发表于:2013-11-1 10:11:00
地板
我是这样的一个意思:
希望获取鼠标点击的如下信息
点击的位置一个cell还是选中的row,还是选中的col
    private void c1FlexGrid1_Click(object sender, EventArgs e)
        {
            HitTestInfo hit = this.c1FlexGrid1.HitTest();
            MessageBox.Show("ok");
        }        
能否帮我将messagebox中的ok替换成当前鼠标点击获取的位置信息?
初学,这样的问题请见谅!
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2013-11-1 10:36:00
5#
回复 3楼sgs的帖子

谦虚了。

我刚才搜索了以前的论坛问题,你先看看:
winform控件c1flexgrid行选择的判断问题
回复 使用道具 举报
sgs
中级会员   /  发表于:2013-11-1 10:54:00
6#
呵呵,可能描述的比较啰嗦
点击c1flexgrid能否获取点击的是第几行第几列的信息?
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2013-11-1 11:43:00
7#
回复 6楼sgs的帖子

这个代码试试:

  1.         void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
  2.         {
  3.             int row = c1FlexGrid1.HitTest().Row;
  4.             int col = c1FlexGrid1.HitTest().Column;

  5.             object obj = c1FlexGrid1[row, col];

  6.             MessageBox.Show(string.Format("row: {0}, col: {1}, data={2}",
  7.                 row, col, obj));
  8.         }
复制代码
回复 使用道具 举报
sgs
中级会员   /  发表于:2013-11-1 11:56:00
8#
谢谢,就是这样的结果,非常感谢!
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2013-11-1 14:36:00
9#
回复 8楼sgs的帖子

非常高兴能帮你解决这个问题,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部