以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 在窗体中用按钮控件,怎么实现流程状态显示呢? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=159012) |
-- 作者:李孝春 -- 发布时间:2020/12/10 16:10:00 -- 在窗体中用按钮控件,怎么实现流程状态显示呢? 在窗体中用按钮控件,怎么实现流程状态显示呢? 想实现当党员信息表中 递交申请书时间 不为空 且标志列为true时 接收入党申请书 按钮显示进度2图片 反之 标志列为false时 接收入党申请书 按钮显示进度1图片 全局代码事件如下: Public zhuangtai1 As Image = GetImage("进度1.png") Public zhuangtai2 As Image = GetImage("进度2.png") Dim lb As WinForm.Label = e.Form.Controls("Label1") lb.Text=vars("姓名") Dim lvw As WinForm.ListView = Forms("党建工作").Controls("ListView1") Dim vr As WinForm.ListViewRow = lvw.Current \'获取ListView的当前行 If vr IsNot Nothing Then \'如果不存在当前行,也就是内有选定任何一行 Dim ab As DataRow ab=Tables("党员信息").DataTable.Find("姓名=\'" & vars("姓名") & "\'") If ab IsNot Nothing Then If ab("递交申请书时间") IsNot Nothing And ab("标志")=True Then e.Form.Controls("接收入党申请书").Visible = True e.form.Controls("接收入党申请书").basecontrol.BringToFront e.Form.Controls("审看入党申请书").Visible = False End If If ab("递交申请书时间") Is Nothing And ab("标志")=False Then e.Form.Controls("接收入党申请书").Visible = False e.Form.Controls("审看入党申请书").Visible = False End If End If End If 窗体中用按钮控件做成了如下效果图: [此贴子已经被作者于2020/12/10 16:12:29编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/12/10 16:49:00 -- http://www.foxtable.com/webhelp/topics/0772.htm If ab IsNot Nothing Then If ab("递交申请书时间") IsNot Nothing And ab("标志")=True Then e.Form.Controls("接收入党申请书").Visible = True e.form.Controls("接收入党申请书").basecontrol.BringToFront e.form.Controls("接收入党申请书").Image = zhuangtai1 e.Form.Controls("审看入党申请书").Visible = False End If If ab("递交申请书时间") Is Nothing And ab("标志")=False Then e.Form.Controls("接收入党申请书").Visible = False e.form.Controls("接收入党申请书").Image = zhuangtai2 e.Form.Controls("审看入党申请书").Visible = False End If End If |
-- 作者:李孝春 -- 发布时间:2020/12/10 17:24:00 -- 回复:(有点蓝)http://www.foxtable.com/webhelp/to... 有点蓝老师 下述代码可以实现遍历当前窗体中所有按钮控件,并返回控件数量 Dim ls As new List(of String) For Each c As object In e.form.controls If typeof c Is winform.button Then ls.add(c.name) End If Next MessageBox.Show(ls.Count) 一楼图片流程按钮节点太多 累计达五十个 一个个的按二楼代码进行添加的话 太繁琐 有没有更高效的办法实现如下效果呢? 所有按钮控件在默认的时候都是进度1图片 当第一阶段节点都走完的时候,对应的第一阶段的按钮全部批量显示图片进度1 其他的节点依旧显示图片进度2 e.form.Controls("接收入党申请书").Image = zhuangtai1 这个地方有没有办法实现批量多个按钮控件一起赋值图片呢? |
-- 作者:有点蓝 -- 发布时间:2020/12/10 20:14:00 -- dim sre() as string = {"按钮1","按钮1"} for each s as string in sre e.form.Controls(s).Image = zhuangtai1 next
|