最新提现记录

  • 恭喜 admin 于 2023-6-6 15:17 成功提现 500元
  • 恭喜 admin 于 2023-5-3 09:45 成功提现 400元

解释代码

  [复制链接]
cmt | 2023-6-15 14:44:56 | 显示全部楼层
chatGPT_小控 发表于 2023-6-15 09:33
这段代码是在从数据库查询指定条件下MethodPath表中符合要求的记录数量。具体每一行代码的意思如下:1.定 ...

While Not objRecordset.EOF
啥意思
回复

使用道具 举报

chatGPT_小控 | 2023-6-15 14:45:07 | 显示全部楼层
cmt 发表于 2023-06-15 14:44
While Not objRecordset.EOF
啥意思

这段代码使用了一个While循环结构,当objRecordset对象的End Of File属性(EOF)为False时执行循环内部的代码,即记录集对象还没有到达文件末尾。 在本例中,代码的作用是遍历objRecordset记录集对象中的每一行数据,所以当EOF为False时才可以继续读取下一行数据。因此,该循环的作用是在查询结果集中逐行进行处理和操作。当循环结束时,会跳出循环并返回到循环后的下一行代码。
回复

使用道具 举报

cmt | 2023-6-15 14:53:21 | 显示全部楼层
chatGPT_小控 发表于 2023-6-15 14:45
这段代码使用了一个While循环结构,当objRecordset对象的End Of File属性(EOF)为False时执行循环内部的 ...

objRecordset.MoveNext
什么意思
回复

使用道具 举报

chatGPT_小控 | 2023-6-15 14:53:32 | 显示全部楼层
cmt 发表于 2023-06-15 14:53
objRecordset.MoveNext
什么意思

`objRecordset.MoveNext` 是一个记录集对象的方法,其作用是将记录集中的指针向下移动一条记录,并使新位置成为当前记录。如果当前记录已经是最后一条记录,那么 `MoveNext` 方法将不产生任何效果,同时将使 `EOF` 属性为 `True`。

在一个 `While` 循环结构中,通常会与 `MoveNext` 方法一起使用来遍历记录集的所有记录。每次循环时,都会使用 `MoveNext` 方法将指针移向记录集的下一条记录,并执行相应的操作直到完成整个记录集的遍历。
回复

使用道具 举报

cmt | 2023-6-15 15:00:13 | 显示全部楼层
chatGPT_小控 发表于 2023-6-15 14:53
`objRecordset.MoveNext` 是一个记录集对象的方法,其作用是将记录集中的指针向下移动一条记录,并使新位 ...

If Left(ScreenItems("TRote").text,4) = "VICI" Then
                                Path = Right(ScreenItems("TRote").text,Len(ScreenItems("TRote").text)-9)'去掉VICI
                        Else
                                Path = ScreenItems("TRote").text
                        End If
解释
回复

使用道具 举报

chatGPT_小控 | 2023-6-15 15:00:34 | 显示全部楼层
cmt 发表于 2023-06-15 15:00
If Left(ScreenItems("TRote").text,4) = "VICI" Then ...

这段代码的作用是针对屏幕上名为 "TRote" 的元素的文本进行处理,从而确定路径信息。

具体解释如下:

1. 如果 TRote 元素文本的前四个字符为 "VICI",则执行下一步操作,否则执行 Else 语句块中的代码。
2. 这里的 `Left` 函数表示从 TRote 元素文本的左侧开始取出指定长度的字符串,这里是取出前四个字符。因此,如果 TRote 元素文本的前四个字符等于 "VICI",就会进入上文提到的 `If` 语句块。
3. 接下来使用 `Right` 函数从 TRote 元素文本的右侧开始取出指定长度的字符串。这里的长度是 TRote 元素文本长度减去 9,是因为字符串中包含了 "VICI" 和一个分号,需要同时去掉。最终得到的结果是路径信息 Path。
4. 如果 TRote 元素文本的前四个字符不等于 "VICI",则执行 `Else` 语句块中的代码,直接将 TRote 元素文本赋值给路径信息 Path。
回复

使用道具 举报

cmt | 2023-6-15 15:05:02 | 显示全部楼层
chatGPT_小控 发表于 2023-6-15 15:00
这段代码的作用是针对屏幕上名为 "TRote" 的元素的文本进行处理,从而确定路径信息。

具体解释如下:

tmp=""
                        For k=0 To 84
                                tmp=tmp& ValveList(k)
                        Next
解释
回复

使用道具 举报

chatGPT_小控 | 2023-6-15 15:05:16 | 显示全部楼层
cmt 发表于 2023-06-15 15:05
tmp=""
                        For k=0 To 84
                                tmp=tmp& ValveList(k)
...

这段代码的作用是将 ValveList 数组中的所有元素连接在一起,存储到 tmp 变量中。具体解释如下:1. 首先将 tmp 变量初始化为空字符串,以便后面将所有元素连接在一起。2. 然后使用 `For` 循环遍历 ValveList 数组中的每一个元素,从 0 到 84,也就是一共执行 85 次循环。3. 在每次循环中,通过连接运算符 & 将当前元素添加进 tmp 中。因为 tmp 初始化为空字符串,所以第一次添加的元素将成为 tmp 中的第一个字符,第二次添加的元素成为第二个字符,以此类推。4. 最终循环结束后,tmp 中存储的就是 ValveList 数组中所有元素按照顺序依次连接在一起的结果。
回复

使用道具 举报

cmt | 2023-6-15 15:14:18 | 显示全部楼层
chatGPT_小控 发表于 2023-6-15 15:05
这段代码的作用是将 ValveList 数组中的所有元素连接在一起,存储到 tmp 变量中。具体解释如下:1. 首先 ...

objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,1)=ScreenItems("TRote").text
                objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,2)=ScreenItems("TFlow").text
                If ScreenItems("TStart").text = "无" Then
                        objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,3)=""
                Else
                        objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,3)=ScreenItems("TStart").text
                End If
                If ScreenItems("TStop").text = "无" Then
                        objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,4)=""
                Else
                        objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine").Read,4)=ScreenItems("TStop").text
                End If
解释
回复

使用道具 举报

chatGPT_小控 | 2023-6-15 15:14:47 | 显示全部楼层
cmt 发表于 2023-06-15 15:14
objGrid.TextMatrix(HMIRuntime.Tags("MethodNameLine ...

这段代码的作用是将屏幕上的一些文本值("TRote"、"TFlow"、"TStart" 和 "TStop")写入到一个名为 objGrid 的网格控件中。具体解释如下:

1. 第一行将屏幕上名为 "TRote" 的元素的文本值赋值给了 objGrid 的指定行和列(这里的 "HMIRuntime.Tags("MethodNameLine").Read" 表示读取 HMIRuntime 服务的 Tags 属性中名为 "MethodNameLine" 的标记,这个标记存储了当前要写入网格控件的行号,后面再详细解释)。

2. 第二行将屏幕上名为 "TFlow" 的元素的文本值赋值给了 objGrid 的指定行和列。

3. 第三行首先判断屏幕上名为 "TStart" 的元素的文本值是否等于 "无",如果是,则将 objGrid 的指定行和列的值设置为空字符串;否则,将该元素的文本值赋值给 objGrid 的指定行和列。

4. 第四行同第三行,只不过是针对了屏幕上名为 "TStop" 的元素。

需要注意的是,这里的行号是通过读取 HMIRuntime 服务的 Tags 属性中存储的值来确定的。实际上,在调用这段代码之前,应该已经将 "MethodNameLine" 标记的值设置为了正确的行号。这样做的原因是,这段代码可能会被反复调用,每次调用时需要将值写入到指定的行中。因此,通过将行号存储在 HMIRuntime 服务的 Tags 属性中,可以确保每次调用时都能够正确地写入到指定的行中,而不会出现错误。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则