搬家第14天-137.Wincc V7.3 使用c脚本修改ListView单元格数据
前面的博客记录了如何使用c脚本从数据表将数据显示在ListView控件中,有时候我们还需要使用脚本修改ListView控件中某些数据。以前的博客记录过使用vbs脚本修改,今天实验了c脚本可以达到同样的效果。
假设已经有这样一个ListView控件,显示了一些数据如下图(为了方便填入数据,在画面打开事件中写入前一篇博客的脚本,新建三个文本内部变量Curdate,flow1,flow2,flow3,利用前一篇博客的数据库)。
我们需要使用C脚本修改第二行各列的数据。在画面上放置一个按钮,按钮的鼠标点击事件添加以下c代码
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma code("kernel32.dll")
#define GetObject GetObject
int i,RsCount;
__object *pdl=NULL;
__object *pic=NULL;
__object *obj=NULL;
__object *ListItem=NULL;
__object *ListSubItem=NULL;
pdl = __object_create("PDLRuntime");
pic=pdl->GetPicture("");
obj=pic->GetObject("LV");
ListItem=obj->listitems->item(2);
ListItem->Listsubitems->item(1)->text="2017-01-01";
ListItem->Listsubitems->item(2)->text=234;
ListItem->Listsubitems->item(3)->text=567;
ListItem->Listsubitems->item(4)->text=890;
}
保存运行就可以看到第二行个列数据已经被修改了