以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 复合框 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=99489) |
-- 作者:黄金精算师 -- 发布时间:2016/6/23 13:59:41 -- 复合框 你好,可以帮写一段 复合框 的代码吗?因为策略中老是换时不方便 我的钩选项是这样写的,你帮写个大括,可以吗 \'------------------------------------------------------------- Sub bk_CheckBox1_Click()
\'
择盈平仓
if bk_CheckBox1.Caption="择盈平仓" then
iRun=0
\'暂停
bk_CheckBox1.Caption="停止择盈"
bk_CheckBox1.backcolor=rgb(255,0,0)
else
iRun=1
\'运行
bk_CheckBox1.Caption="择盈平仓"
bk_CheckBox1.backcolor=rgb(0,255,0) \'
end if |
-- 作者:yukizzc -- 发布时间:2016/6/23 14:13:25 -- 您是要做什么操作呢?? 这个复选框选中后改变显示的文字和背景色,你这边代码都没问题 |
-- 作者:黄金精算师 -- 发布时间:2016/6/23 14:22:39 -- IF,01到12 选择 IF01 IF02 IF03 IF04只要开个头,我能看明白就好了,
我上面的,只是我有一个按键的代码,所以钩选,我也这样做,那些文字和背景色我能修改,只是复选择框没有开头,搞了半天,开不了头 |
-- 作者:黄金精算师 -- 发布时间:2016/6/23 14:50:42 -- 我想把选项中点选IF01到IF12,就是选择后,取到“IF01”,如下面这样用IF07 给后面的这种代码执行 我这里的IF07是直接写上去的,我想通过复选框选择
set report1=marketdata.getreportdata("IF07","ZJ") \' application.msgout Cdate(time) & ",最新价:" &report1.NewPrice & ",买1价:"&report1.buyprice1&",卖1价:"&report1.sellprice1 |
-- 作者:yukizzc -- 发布时间:2016/6/23 21:06:23 -- 这是combox控件,这是初始化添加项例子 UserForm1_ComboBox1.List = Array("IF00", "IH00", "IC00", "TF00")这个是取控件切换合约然后进行操作 Sub UserForm1_ComboBox1_Click() Select Case UserForm1_ComboBox1.Value Case UserForm1_ComboBox1.List(0)
这边你自己的程序
|
-- 作者:黄金精算师 -- 发布时间:2016/6/24 16:37:59 -- bk_ComboBox1.List = Array("IF00", "IH00", "IC00", "TF00") Sub bk_ComboBox1_Click() Select Case bk_ComboBox1.Value Case bk_ComboBox1.List(0) SASA="IF00" Case bk_ComboBox1.List(1) SASA="IF12" End Select bk_TextBox30=SASA End Sub
这样,能取到值了,如果我要默认其中一个值,怎么写 就是运行时就有一个值,现在运行时是空白的,我想定下一个值作为默认 [此贴子已经被作者于2016-6-24 16:39:02编辑过]
|
-- 作者:pel46585 -- 发布时间:2016/6/24 23:34:29 -- bk_ComboBox1.listindex=0 |
-- 作者:黄金精算师 -- 发布时间:2016/6/27 11:34:30 -- 如果在下面加一句的结果复选框能显示但不能附值,在下面的基础上加过一次触发,这样CALL bk_ComboBox1_Click 也不行 bk_ComboBox1.List = Array("IF00", "IH00", "IC00", "TF00") bk_ComboBox1.listindex=0 如果加在这个位置,那个图窗是会显示IF01 但实现SASA并不等于IF0 ,要点一次别的,再回点一次触发才是等于 SASA="IF00" SASA="IF00" 在这加一句这个没有反应 Sub bk_ComboBox1_Click() Select Case bk_ComboBox1.Value Case bk_ComboBox1.List(0) SASA="IF00" Case bk_ComboBox1.List(1) SASA="IF12" End Select bk_TextBox30=SASA End Sub
|
-- 作者:yukizzc -- 发布时间:2016/6/27 11:54:27 -- bk_ComboBox1.List = Array("IF00", "IH00", "IC00", "TF00") bk_ComboBox1.listindex=0 bk_TextBox1="IF00" \'要先给textbox传递过去,不然你放在事件里的话就只有点击才会执行了 Sub bk_ComboBox1_Click() Select Case bk_ComboBox1.Value Case bk_ComboBox1.List(0) SASA="IF00" Case bk_ComboBox1.List(1) SASA="IH00" Case bk_ComboBox1.List(2) SASA="IC00" Case bk_ComboBox1.List(3) SASA="TF00" End Select bk_TextBox1=SASA End Sub |
-- 作者:黄金精算师 -- 发布时间:2016/6/27 11:57:40 -- 主程是这样的 Sub APPLICATION_VBAStart()
CALL bk_ComboBox1_Click \'触发一次复选框 bk.Show
\'打开主控窗体 End Sub 触发复选框后的取值是这样的 bkCode1="SASA" set report1=marketdata.getreportdata(bkCode1,"ZJ") 编译时会显示无数据出错,如果在后面强行加载SASA为IF12,这样程序能正常,复选择框显示IG01也正常,但是复选框的值无法取出 |