以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  从板块中删除品种的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=4546)

--  作者:pel46585
--  发布时间:2010/12/22 18:01:42
--  从板块中删除品种的问题
sub test()
 Set bStock = CreateObject("Stock.Block")
 call bStock.open("股票池",1)
 for i=1 to bStock.count
  call bStock.RemoveAt(i)
  call bStock.toSave("股票池","股票池")
 next
end sub
以上代码的结果是用股票池中的最后一个品种替换了所有品种,而不是删除,怎么做到从板块中删除一个品种,真正少一个品种,而不是替代?

--  作者:大灰狼
--  发布时间:2010/12/22 20:21:13
--  

 for i=1 to bStock.count
  call bStock.RemoveAt(i)

  i=i-1
 next
  call bStock.toSave("股票池","股票池")


--  作者:pel46585
--  发布时间:2010/12/22 21:35:02
--  

  晕,整出个死循环


--  作者:pel46585
--  发布时间:2010/12/22 21:50:03
--  

感觉应该是TOSAVE上出的错误.问题是不每次SAVE一下,操作完了,又自动还原了.

TOSAVE吧,可对象是在前面定义了的,保存相当于没有删除品种.

不知道怎么办了


--  作者:王锋
--  发布时间:2010/12/26 18:25:22
--  

Sub test()
    Set bStock = CreateObject("Stock.Block")
 call bStock.open("自选股",1)
 for i=0 to bStock.count-1
  call bStock.RemoveAt(i)
  i=i-1
 
  if bStock.count < 1 then
  exit for
  end if
 next
 
  call bStock.toSave("自选","自选股")

 

End Sub

 

 

这个代码就可以工作了,但是目前的2.2版在保存空的板块时有个BUG无法保存,已经在下个版本进行了修正。


--  作者:wjm3333
--  发布时间:2010/12/26 20:30:35
--  
这个代码在2.1版本也不能工作,清空板块挺有用的希望尽快修复
--  作者:pel46585
--  发布时间:2010/12/27 13:55:26
--  

for i=0 to bStock.count-1
i=i-1
next

这个是死循环啊,哥儿们,你试过这个代码吗???


--  作者:wjm3333
--  发布时间:2010/12/27 22:03:34
--  
以下是引用pel46585在2010-12-27 13:55:26的发言:

for i=0 to bStock.count-1
i=i-1
next

这个是死循环啊,哥儿们,你试过这个代码吗???

加上下面代码就不是死循环了  

if bStock.count < 1 then
  exit for
  end if
不过现在版本还不能用,希望尽快修复


--  作者:pel46585
--  发布时间:2010/12/28 10:14:03
--  

发错了,请版主删除

[此贴子已经被作者于2010-12-28 10:15:03编辑过]