以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 求助版主:FrameToGrid的用法 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=2069) |
-- 作者:volersky -- 发布时间:2010/7/9 8:08:14 -- 求助版主:FrameToGrid的用法 我查了下说明,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 -- 发布时间:2010/7/9 8:28:41 -- 这个函数在设计时存在缺陷,我们会在下个版本及时修正 |
-- 作者:volersky -- 发布时间:2010/7/9 8:33:38 -- 谢谢,我搞了半天,原来是这个问题,还有一个问题:
Grid.ToPHeight在框架内重新设置后,Top位置是变化了,但K线图不会相应变化,只有在公式里调用了某个公式后,K线图才会相应上移或下移,是不是这个也存在bug? [此贴子已经被作者于2010-7-9 8:36:50编辑过]
|
-- 作者:admin -- 发布时间:2010/7/9 10:37:10 -- 这不是BUG,因为只有重新设置公式时整个系统才会重新刷新,你可是试试在改变TOPHEIGHT属性后,使用Frame的ReCalcAllGrid方法全部重新刷新 [此贴子已经被作者于2010-7-9 10:37:26编辑过]
|
-- 作者:volersky -- 发布时间:2010/7/12 16:06:13 -- 我试分别在初始化,onmove,十字光标状态下调用,都没用,如果在onPaint内调用,一闪一闪亮晶晶 |
-- 作者:admin -- 发布时间:2010/7/12 18:51:51 -- onmove是不能每次都刷新的,会导致机器死掉,因为鼠标只要移动一个象素就会被执行一次 onPaint更不需要调用,因为本身就是在重绘时发生的事件 如果你不能自行解决问题,那么建议你贴出代码,我们帮你看看 |
-- 作者:volersky -- 发布时间: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 -- 发布时间:2010/7/13 17:34:46 -- topHeight 属性会在每次重绘时重新计算高度,所以系统会覆盖掉你刚才设置的数值,这个属性一般是用来读取数值显示区高度的,用来设置高度目前是有些困难 |
-- 作者:volersky -- 发布时间:2010/7/13 19:11:27 -- 谢谢 |
-- 作者:xyhsoft -- 发布时间:2010/7/20 0:47:54 -- FrameToGrid(x, y, x2, y2) 上面两个都通不过。 |