阅读 123

搬家第二天-33.Wincc V7.3 MSHFGrid 读取表格数据并制作表头

在Wincc页面上使用MSHFGrid控件可以读取数据库表,一般来说,显示效果是这样的:

有时候我们希望有表头,显示成这个样子:

这样的话,我们就需要在处理MSHFGrid控件时,多做一些处理。下面详细描述一下实现这种效果的步骤。

一 准备工作

    假设SQL Server中有这样一张表

在WINCC页面上放置一个MSHFGrid控件,名字叫做MSHFGrid,一个按钮,按钮的点击事件VBS脚本如下:

Sub OnClick(ByVal Item)                                                                  
Dim conn
Dim ssql
Dim ors
Dim ocom
Dim scon
Dim MSHFGrid
Dim ADODC
Dim PCName
Dim i,j,InsertRowCount,colcount
PCName=HMIRuntime.Tags("@LocalMachineName").Read
scon="Provider = SQLOLEDB.1;Integrated Security=SSPI;Persist SecurityInfo=False;Initial Catalog =MyDB;Data Source = " &PCName & "\WINCC"
ssql="select * from charttable"
Set conn=CreateObject("ADODB.Connection")
conn.ConnectionString=scon
conn.Cursorlocation=3
conn.open
Set ors=CreateObject("ADODB.RecordSet")
Set ocom=CreateObject("ADODB.Command")
ocom.commandtype=1
Set ocom.ActiveConnection=conn
ocom.CommandText=ssql
Set ors=ocom.Execute
Set MSHFGrid=ScreenItems("MSHFGrid")
Set MSHFGrid.DataSource=ors
MSHFGrid.Refresh
MSHFGrid.colwidth(1)=2500
Set ors=Nothing
conn.close
Set conn=Nothing
‘以下代码添加表头
InsertRowCount=3  ‘插入两行
For i=1 To InsertRowCount
   MSHFGrid.AddItem "",1
Next
‘写“表头”
For i=1 To MSHFGrid.Cols-1
 MSHFGrid.TextMatrix(3,i)=MSHFGrid.TextMatrix(0,i)
Next
For i=1 To MSHFGrid.Cols-1
  MSHFGrid.TextMatrix(0,i)="" ‘去掉原有的“表头”
Next
colcount=MSHFGrid.Cols
MSHFGrid.MergeCells= 1 ‘合并方式为自由合并
For j=1 To colcount-1
  MSHFGrid.TextMatrix(1,j)="***装置工艺参数表"
  MSHFGrid.TextMatrix(2,j)="查询时间:" & Now
Next
MSHFGrid.Mergerow(1)=True  ‘第一行合并
MSHFGrid.Mergerow(2)=True  ‘第二行合并
‘MSHFGrid.AllowUserResizing=3 ‘行高列宽皆可调整
MSHFGrid.Row=1
MSHFGrid.Col=1
‘单元格对齐方式 CellAlignment
‘0 左,顶部
‘1 左,居中
‘2 左,底部
‘3 居中,顶部
‘4 居中,居中
‘5 居中,底部
‘6 右,顶部
‘7 右,居中
‘8 右,底部
‘9 默认方式:也即字符串左,居中;数值右,居中
MSHFGrid.CellAlignment=4  ‘水平居中,垂直居中
MSHFGrid.Row=2
MSHFGrid.Col=1
MSHFGrid.CellAlignment=7

‘设置表头两行行高
MSHFGrid.Row=1
MSHFGrid.CellFontSize =14
MSHFGrid.Row=2
MSHFGrid.CellFontSize =14
MSHFGrid.RowHeight(1)=600
MSHFGrid.RowHeight(2)=600

End Sub

原文:https://www.cnblogs.com/fishingsriver/p/14350376.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐