以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  [求助]跨窗格输出字符串,无效?  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=8350)

--  作者:yeyi
--  发布时间:2011/10/11 14:13:11
--  [求助]跨窗格输出字符串,无效?

我在框架LZZ003中窗格WINDOW3中公式YCXT中调用自定义函数outmsgwin7:达到在窗格window7中输出字符串。

但测试后,在window7窗格中始终空白

求老大帮助。

 

Function outmsgwin7(Formula,msno)
    \'Application.ActivateFrame("LZZ003")
    Set Grid = LZZ003.GetGridByName("Window7")
    CALL Grid.DRAWTEXT(2,1,"TESTT**************************************************")
    CALL Grid.DRAWTEXT(3,0.5,"TESTT**************************************************")
    outmsgwin7=0

End Function


--  作者:26327756l
--  发布时间:2011/10/11 14:26:56
--  
问题正在解决中
--  作者:26327756l
--  发布时间:2011/10/11 15:41:12
--  

你写的文本颜色是黑色的,和背景相同,所以显示看不出效果,要么换了背景颜色,要么换一下字体的颜色。


--  作者:guotx2010
--  发布时间:2011/10/11 20:44:01
--  

不能在自定义函数中传递字符串,可以通过全局变量来解决你的问题,方法是:公式中使用extgbstringset()函数给全局变量赋值,自定义函数中用document.getextstring()读取字符串的值。

 


--  作者:yeyi
--  发布时间:2011/10/12 8:22:03
--  

我试了一下系统的示范程序:原来代码如下

\' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象

Set Grid = Technic.GetGridByName("Main")

\'在开始坐标10,100,结束坐标10,100位置绘制椭圆

Grid.DrawEllipse 10,10,100,100,255

\'显示窗格内的公式个数

Count = Grid.FormulaCount

MsgBox Count

 

 

改成,不是跨窗格的,就在Technic框架下的Window11窗格:

\' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象

Set Grid = Technic.GetGridByName("Window11")

\'在开始坐标10,100,结束坐标10,100位置绘制椭圆

Grid.DrawEllipse 10,10,100,100,255

Grid.DrawText   1,1,"23424444444444444444444444444444444444444"

Grid.DrawText   10,2,"23424444444444444444444444444444444444444",1

Grid.DrawText   100,1.5,"23424444444444444444444444444444444444444",2

\'显示窗格内的公式个数

 

结果:椭圆一闪而灭,文字始终不见

 


--  作者:26327756l
--  发布时间:2011/10/12 8:32:26
--  

你试没试改了背景色后,还是看不见字体吗。我试过,椭圆一闪而过,字体看不见就是因为字体是黑色显示的。


--  作者:王锋
--  发布时间:2011/10/12 10:22:05
--  
http://www.weistock.com/bbs/dispbbs.asp?BoardID=5&ID=5960