欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 求助版主:FrameToGrid的用法

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有7394人关注过本帖树形打印复制链接

主题:求助版主:FrameToGrid的用法

帅哥哟,离线,有人找我吗?
volersky
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:109 积分:764 威望:0 精华:0 注册:2010/6/27 14:04:16
求助版主:FrameToGrid的用法  发帖心情 Post By:2010/7/9 8:08:14 [只看该作者]

我查了下说明,Grid的FrameToGrid方法是这样说明的:

FrameToGird 方法

将“框架”坐标转换为窗格坐标。

FrameToGrid(x1, y1, x2, y2)

X1,Y1     输入参数,框架坐标位置

X2,Y2     输出参数,窗格坐标位置

 

我在框架内这样调用:

 

Sub kp_CursorMove(Grid, Index, x, y)

     Dim x1,y1

     Call Grid.FrameToGrid(x,y,x1,y1)

End Sub

但是通不过,请教版主,这个方法的等号左边应该是个什么类型,或者这个要怎么调用?谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
admin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/9 8:28:41 [只看该作者]

这个函数在设计时存在缺陷,我们会在下个版本及时修正

 回到顶部
帅哥哟,离线,有人找我吗?
volersky
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:109 积分:764 威望:0 精华:0 注册:2010/6/27 14:04:16
  发帖心情 Post By:2010/7/9 8:33:38 [只看该作者]

谢谢,我搞了半天,原来是这个问题,还有一个问题:

 

Grid.ToPHeight在框架内重新设置后,Top位置是变化了,但K线图不会相应变化,只有在公式里调用了某个公式后,K线图才会相应上移或下移,是不是这个也存在bug?

[此贴子已经被作者于2010-7-9 8:36:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
admin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/9 10:37:10 [只看该作者]

这不是BUG,因为只有重新设置公式时整个系统才会重新刷新,你可是试试在改变TOPHEIGHT属性后,使用FrameReCalcAllGrid方法全部重新刷新

[此贴子已经被作者于2010-7-9 10:37:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
volersky
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:109 积分:764 威望:0 精华:0 注册:2010/6/27 14:04:16
  发帖心情 Post By:2010/7/12 16:06:13 [只看该作者]

我试分别在初始化,onmove,十字光标状态下调用,都没用,如果在onPaint内调用,一闪一闪亮晶晶

 回到顶部
帅哥哟,离线,有人找我吗?
admin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/12 18:51:51 [只看该作者]

onmove是不能每次都刷新的,会导致机器死掉,因为鼠标只要移动一个象素就会被执行一次

onPaint更不需要调用,因为本身就是在重绘时发生的事件

如果你不能自行解决问题,那么建议你贴出代码,我们帮你看看


 回到顶部
帅哥哟,离线,有人找我吗?
volersky
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:109 积分:764 威望:0 精华:0 注册:2010/6/27 14:04:16
  发帖心情 Post By:2010/7/13 16:46:18 [只看该作者]

谢谢版主!

我新建一个田字框架

加入代码如下:



Dim Grid Set Grid=Frame1.GetGridByIndex(0)
Grid.topHeight=200
Frame1.ReCalcAllGrid


Sub Frame1_Load()
Dim Grid
Set Grid=Frame1.GetGridByIndex(0)
Grid.topHeight=200
Frame1.ReCalcAllGrid
End Sub


Sub Frame1_Initialize()
Dim Grid
Set Grid=Frame1.GetGridByIndex(0)
Grid.topHeight=200
Frame1.ReCalcAllGrid
End Sub


都没用,我是在停盘时间搞的,请版主教教,应该在哪个位置或函数内调用才能实现?

 回到顶部
帅哥哟,离线,有人找我吗?
admin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/13 17:34:46 [只看该作者]

topHeight 属性会在每次重绘时重新计算高度,所以系统会覆盖掉你刚才设置的数值,这个属性一般是用来读取数值显示区高度的,用来设置高度目前是有些困难

 回到顶部
帅哥哟,离线,有人找我吗?
volersky
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:109 积分:764 威望:0 精华:0 注册:2010/6/27 14:04:16
  发帖心情 Post By:2010/7/13 19:11:27 [只看该作者]

谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
xyhsoft
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:24 积分:237 威望:0 精华:0 注册:2010/5/18 22:48:21
  发帖心情 Post By:2010/7/20 0:47:54 [只看该作者]

 FrameToGrid(x, y, x2, y2)
 ValueByPoint(xx, y2, Date, ydata, false)

上面两个都通不过。


 回到顶部
总数 13 1 2 下一页