wincc中如何在表格中实现复选框(CheckBox)

我用sql语句读出数据后,用一个表格控件在界面中展示出来,我希望能做到这样:
1.数据字段中有些选项我希望能够以复选框(CheckBox)的形式展现;
2.可以直接在表格中对复选框对应的数据进行修改(勾选或取消勾选);
3.可以指定需要用复选框展现的的字段(列);
请问哪种控件可以实现我的需求?最好能给个参考实例,谢谢!

问题补充:
我试了listbox的那个方案,存在如下问题:
1.无法定义列名;
2.listbox一行中只能有一个数据,而我希望控件如数据库中的表格一样以行列形式显示数据;
3.设置复选框的那个方法我还没找到。

最佳答案

此回答已完善

建议用List Box控件来做。理由如下:
它的Number of Rows(行数)的最大值达到32000个,而Check Box最大值是32个。如果表的字段个数超过32个的时候,Check Box就不行了。
另外,List Box也可以做成复选框的形式,编程动态增加它的子项目,很简单。

   For iIndex = 1 To oRst.Fields.Count
       objListBox.AddItem oRst.Fields(iIndex-1).Name
   Next
当然,判断哪些子项被选中,还要用代码判断:
objListBox.Selected(iIndex – 1) = True

总之用List Box和表格控件联合起来,是可以完成你的功能需求的。

补充:
1、数据库中的表记录还是用你自己的表格控件来显示;
2、我说的ListBox控件不是WinCC自带的,而是Microsoft Forms 2.0 ListBox控件,安装Office软件后就有了。
3、用这个ListBox控件,显示所有字段名,让客户选择“显示”哪些字段。只是起到“选择“的作用,选择完成后,表格控件按照客户的选择,对列重新编排(增减)。
4、ListBox控件的ListStyle属性=1时,则列表项为复选框形式。

提问者对于答案的评价:
虽然最后我的问题还是没有得到理想的解决方案,但是你的回答很耐心,谢谢你!

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc358769.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午10:38
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论