Z zjwyyh Unregistered / Unconfirmed GUEST, unregistred user! 2003-07-07 #1 程序中有这样的要求 当点击dbgrid的某个单元格,一个新的窗口显示出来,但窗口的左上角必须在该单元格的右下角。 我试了很多次效果不满意。 有什么好的办法呢?
W wangzheking Unregistered / Unconfirmed GUEST, unregistred user! 2003-07-07 #2 你可以通过dbgrid的top,left,height,width以及单元格的数量,选中单元格的序号,每个单元格的高度的宽度推算出这个单元格的右下角坐标,然后将新窗体的top,left设置成这个坐标就可以了
你可以通过dbgrid的top,left,height,width以及单元格的数量,选中单元格的序号,每个单元格的高度的宽度推算出这个单元格的右下角坐标,然后将新窗体的top,left设置成这个坐标就可以了
Z zjwyyh Unregistered / Unconfirmed GUEST, unregistred user! 2003-07-07 #3 计算列好办,可以用column的width属性,可行怎么计算?? 即使算出了这个坐标一定是相对于dbgrid所在的窗体(因为是根据dbgrid的left ,top算出来的),而窗体的top,left 又是针对于桌面的,按理新窗体的top,left 因为主窗口的left,top加上相应算出的cell的右下角坐标(这个坐标现在相对于主窗体)。可是你可以试试一定有误差。
计算列好办,可以用column的width属性,可行怎么计算?? 即使算出了这个坐标一定是相对于dbgrid所在的窗体(因为是根据dbgrid的left ,top算出来的),而窗体的top,left 又是针对于桌面的,按理新窗体的top,left 因为主窗口的left,top加上相应算出的cell的右下角坐标(这个坐标现在相对于主窗体)。可是你可以试试一定有误差。
L leatarget Unregistered / Unconfirmed GUEST, unregistred user! 2003-07-07 #4 要加上一个坐标系的转换,要从系统坐标系转换到当前窗口的坐标系,还是反之 我记得函数名是clienttoscreen和screentoclient这样经过转换之后的坐标,应该 是可以通过上面各位朋友提供的方法进行计算了。
要加上一个坐标系的转换,要从系统坐标系转换到当前窗口的坐标系,还是反之 我记得函数名是clienttoscreen和screentoclient这样经过转换之后的坐标,应该 是可以通过上面各位朋友提供的方法进行计算了。