6ES72741XK300XA0西门子S7-1200仿真器模块
| 6ES7274-1XK30-0XA0 SIMATIC S7-1200, 仿真器模块 SIM 1274 用于 CPU 1217C, 14 个输入开关, 10x 24V DC 输入端, 4x 1.5V 差分输入端 |
SIEMENS西门子
上海丽丞工业自动化设备有限公司
全新原装,质量保证,保修一年
专业销售及维修西门子各类工控自动化配件;
:S7-200CN、S7-200SMART、S7-300、S7-400、 S7-1200、S7-1500、ET200、LOGO逻西门子可编程控制器辑控制模块
西门子HMI人机界面:触摸屏
西门子变频器:MM420、MM430、MM440、G110、G120、6SE70
西门子工业以太网:通讯网卡、通讯电缆、通讯接头、总线连接器 工控机、交换机、自动化软件等系型号齐全,快速报价,买我们的产品无忧所值,我们的产品都承诺质保一年,让您买的省心舒心,用的放心!
初次接触西门子,初次使用WinCC。
项目有这样一个需求:
一方面,需要像Excel那样显示表格,一些列是固定文字,一些列是可选的内容(备选项目从数据库中读出),一些是可以手动输入的列。
另一方面,许多个页面均需要这样的表格,每个页面中的表格定义的列并不相同。
想过两个方法都有弊端:一是使用Excel嵌入页面,窗口不好控制,载入速度慢导致切换页面卡顿;二是使用工具箱自带表格控件显示,另画区域用于输出,需要各个页面单独设计,需要根据鼠标位置决定输出的类型,实现复杂,且不可靠。
那就使用独立控件来实现吧——网上现成的一般功能超出所需,并且需要付费还可能有兼容性问题——那就自己试着做一个吧!
思路很简单:
使用VB6.0工具箱提供的MSHFlexGrid,TextBox和ComboBox控件为基本组件,直接利用MSHFlexGrid的样式,将TextBox或ComboBox置于MSHFlexGrid之上,且初始是都处于隐藏状态,当鼠标点击相应单元格的时候,把TextBox或ComboBox移至当前单元格处,并使之处于输入激活状态,等待用户选择或者填入数据,而具体是显示TextBox还是ComboBox,需要从自制控件的属性中定义。
当年是完成了这样的一个作品,并且得到了很好的效果。
几年之后,又要做一个工具软件,也有类似的需求,翻出来,可以用!
虽然,那是2018年,又拿起了1998年的VB6.0;虽然,Win7就快停止更新了,又虚拟机装了Xp。
但是,便捷,好用,那就是目的!
所以,
一、技术只是工具,思维才是灵魂
二、海不辞水 故能成其大
下面是一种自定义表格控件的实现方法(一次直接在网页编辑了90%,网页卡死恢复后没了,本次是重写! 此处需要赞)
思路:
上面已经提到,实际上就是实现下面两个事件
步骤:
在VB6.0中编写控件,之后注册再WinCC中使用
(1)确定控件将要提供的功能。
(2)设计控件的外观。
(3)设计控件的接口,即属性、事件和方法。
(4)实现控件的接口和功能。
(5)编译并生成控件文件(.ocx 文件)。
(6)将生成的控件注册到系统中去。
其中,代码主要包含三部分:1、编辑属性2、编辑方法3、控件初始化,具体代码就不在这贴出来了。
优点:
实际上,实现这样一个拼凑的控件并不够,如果能够有利于提高使用效率才更值得考虑。
构建控件时设计了几套“模板”,比如:隔行双色表格、固定行/列与普通单元格区分样式、快速标题字号大于单元格字号等等..,这样能像使用模板一样,在初始化时一行代码即可确定样式,并能保持各个实例的风格统一。
实例:
实际使用是这样的:
Private Sub CommandButton_Click()
'准备好下拉列表选项的数据源,共有三种方式,其中ADO数据集方式没有列出
‘方式一:一维数组式
Dim a(2) As String
a(0) = "A"
a(1) = "B"
a(2) = "C"
‘方式二:分隔符“;”字符串方式
Dim listStr As String
listStr = "X;Y"
'简易表格样式模板A:ClassicModeA(FormatString, BodyFontSize, Rows, Flag)
'参数为格式化字符串、表中正文文本字号、行数(包括固定行)、表头的文字字号与正文字号的差值。
UserControl11.ClassicModeA "列标题1|列标题2|列标题3|列标题4|列标题5", 12, 10, 2
'使用下拉列表式的列
UserControl11.EditEnable = BoxAndList
UserControl11.SelectListMode = True
UserControl11.SLString = "列标题2;列标题4"
'数组参数作为下拉列表选项BuildSLItems (SLItems, Style, Header, Flag )
‘SLItems:可以是字符串、数组或者数据集对象。Style: 指定下拉列表的样式。Header:指定字段名。Flag:标记SLItems是什么类型的值,0为字符串,1为数组,2为数据集对象
UserControl11.BuildSLItems a, 2, "列标题2", 1
'字符串参数作为下拉列表选项
UserControl11.BuildSLItems "X;Y", 2, "列标题4", 0
End Sub
按钮按下后的效果(下图将三种编辑状态通过截图合成到一张图片中,实际使用时是分别激活其中一个单元格进行编辑):
6ES72741XK300XA0西门子S7-1200仿真器模块