您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Delphi >> DBGridEH 设置焦点

DBGridEH 设置焦点

来源:网络整理     时间:2016/7/2 22:41:27     关键词:

关于网友提出的“ DBGridEH 设置焦点”问题疑问,本网通过在网上对“ DBGridEH 设置焦点”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: DBGridEH 设置焦点
描述:

现在界面有一DBGridEH,里面有很多数据,
我现在通过鼠标移动,用MouseCoord,可以获得当前DBGridEH的行(x)与列(y),
我想实现的功能是:
功能1、不用点击DBGridEH的行,可以通过x,y将焦点定位在现在鼠标移动的行上。
功能2、如果x=?或y=? 我可以直接对当前DBGridEH的[x,y]进行赋值。
上述功能1与2解决方法,最好不要与DataSet关联,能在DBGridEH本身的属性上实现最好,谢了。
在线等待,解决即给分


解决方案1:

大体思路讲下:
   首先,你是要设置焦点,VCL控件体系最终是要掉系统的Windows.SetFocus(hWnd: HWND)方法
去设置焦点的,也就是说单元格不具有Handle属性,也就不能调用系统的API去设置焦点,这个时候
方向就要转到讲鼠标位置移动到这个单元格,然后去模拟击中DBGridEH,这时焦点才会在此单元格上。


//移动鼠标位置且按下鼠标可参考此方法,至于根据行,列算出鼠标要移动到的区域方法有很多,随便选个
  SetCursorPos   (Form1.Left+50,   Form1.Top+50); 
  mouse_event   (MOUSEEVENTF_LEFTDOWN,   0,0,0,0); 
  mouse_event   (MOUSEEVENTF_LEFTUP,   0,0,0,0);

以上介绍了“ DBGridEH 设置焦点”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2224630.html

相关图片

相关文章