急,一个辣手问题啊!头疼死了

smydamozhilong 2009-09-02 08:37:35
我写了2个函数
一初始化控件
Dim lvwItem As ListItem
Set lvwItem = listview.ListItems.Add(, , "默认打印机")
lvwItem.SubItems(1) = "0"
lvwItem.SubItems(2) = "0"
lvwItem.SubItems(3) = "0"


二 刷新列表



szSQL = "SELECT NPRINTERID,SUM(NLINENUM) AS SUM_NLINENUM,SUM(NPRINTNUM) AS SUM_NPRINTNUM,SUM(NLINENUM-NPRINTNUM) AS SUM_NNOPRINTNUM FROM PRINTINDEX WHERE NPRINTERID >0 GROUP BY NPRINTERID"
cRecordSet.COpen szSQL, cDBConn, adOpenStatic, adLockReadOnly
Do Until cRecordSet.IsEof
szPrintName = "默认打印机"
listview.FindItem(szPrintName).SubItems(1) = cRecordSet.GetFieldValue("SUM_NLINENUM")
listview.FindItem(szPrintName).SubItems(2) = cRecordSet.GetFieldValue("SUM_NPRINTNUM")
listview.FindItem(szPrintName).SubItems(3) = cRecordSet.GetFieldValue("SUM_NNOPRINTNUM")
cRecordSet.MoveNext
Loop
listview.Refresh



我执行到第二个函数时报错 说with变量为定义

咋回事啊?








...全文
192 15 打赏 收藏 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
嗷嗷叫的老马 2009-09-02
  • 打赏
  • 举报
回复
.....................路过.
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
搞定了
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
listview.FindItem

这个怎么用啊?
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 jhone99 的回复:]
listview 这个名称好像不妥,改成 listview1 试试

listview 控件 名称是否有修改?部件加载是否还在?
[/Quote]

部件加载还在
jhone99 2009-09-02
  • 打赏
  • 举报
回复
listview 这个名称好像不妥,改成 listview1 试试

listview 控件 名称是否有修改?部件加载是否还在?
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jhone99 的回复:]
出错位置在哪里?
[/Quote]
出错位置在


szPrintName = "daddad"

' szPrintName = arrPrinter(cRecordSet.GetFieldValue("NPRINTERID")).PrinterName
listview.FindItem(szPrintName).SubItems(1) = cRecordSet.GetFieldValue("SUM_NLINENUM")
listview.FindItem(szPrintName).SubItems(2) = cRecordSet.GetFieldValue("SUM_NPRINTNUM")
listview.FindItem(szPrintName).SubItems(3) = cRecordSet.GetFieldValue("SUM_NNOPRINTNUM")


当我执行到第二列 listview.FindItem(szPrintName).SubItems(1) = cRecordSet.GetFieldValue("SUM_NLINENUM")
时报错
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jhone99 的回复:]
有引用未做
[/Quote]
啥意思啊?




''功能:刷新窗口计数显示
Public Function RefreshDisplay(listview As listview)
Dim cRecordSet As New CSealDB.CSealRecordset
Dim cRsSet As New CSealDB.CSealRecordset
Dim lvwItem As ListItem
Dim szSQL As String
Dim szPrintName As String

szSQL = "SELECT NPRINTERID,SUM(NLINENUM) AS SUM_NLINENUM,SUM(NPRINTNUM) AS SUM_NPRINTNUM,SUM(NLINENUM-NPRINTNUM) AS SUM_NNOPRINTNUM FROM PRINTINDEX WHERE NPRINTERID >0 GROUP BY NPRINTERID"
cRecordSet.COpen szSQL, cDBConn, adOpenStatic, adLockReadOnly
Do Until cRecordSet.IsEof
szPrintName = arrPrinter(cRecordSet.GetFieldValue("NPRINTERID")).PrinterName
listview.FindItem(szPrintName).SubItems(1) = cRecordSet.GetFieldValue("SUM_NLINENUM")
listview.FindItem(szPrintName).SubItems(2) = cRecordSet.GetFieldValue("SUM_NPRINTNUM")
listview.FindItem(szPrintName).SubItems(3) = cRecordSet.GetFieldValue("SUM_NNOPRINTNUM")
cRecordSet.MoveNext
Loop
listview.Refresh
End Function
''功能:刷新窗口计数显示
Public Function InitDisplay(listview As listview)
Dim cRecordSet As New CSealDB.CSealRecordset
Dim cRsSet As New CSealDB.CSealRecordset
Dim lvwItem As ListItem
Dim i As Integer
For i = 1 To UBound(arrPrinter)
Set lvwItem = listview.ListItems.Add(, , arrPrinter(i).PrinterName)
lvwItem.SubItems(1) = "0"
lvwItem.SubItems(2) = "0"
lvwItem.SubItems(3) = "0"
Next
RefreshDisplay listview
End Function


这是我的这两个函数
jhone99 2009-09-02
  • 打赏
  • 举报
回复
出错位置在哪里?
jhone99 2009-09-02
  • 打赏
  • 举报
回复
有引用未做
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
现在不是4列嘛,我想让第一列显示的内容不变,而后面的3列显示的数字动态的变化,
我就是想实现这个
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhengmenghua 的回复:]
前后控件名不同是怎么回事?
[/Quote]因为这是两个函数,我定义的变量名不一样而已
smydamozhilong 2009-09-02
  • 打赏
  • 举报
回复
cRecordSet.COpen szSQL, cDBConn, adOpenStatic, adLockReadOnly
改成
cRecordSet.Open szSQL, cDBConn, adOpenStatic, adLockReadOnly


cRecordSet.COpen不用改成cRecordSet.Open 因为cRecordSet是我们自己开发的一个连接组建,他的方法就是COpen 没有open
jhone99 2009-09-02
  • 打赏
  • 举报
回复
发了15个帖子,一个没结,结贴是对帮你的人的尊重

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&


szSQL = "SELECT NPRINTERID,SUM(NLINENUM) AS SUM_NLINENUM,SUM(NPRINTNUM) AS SUM_NPRINTNUM,SUM(NLINENUM-NPRINTNUM) AS SUM_NNOPRINTNUM FROM PRINTINDEX WHERE NPRINTERID >0 GROUP BY NPRINTERID"
cRecordSet.Open szSQL, cDBConn, adOpenStatic, adLockReadOnly
Do Until cRecordSet.IsEof
szPrintName = "默认打印机"
listview.FindItem(szPrintName).SubItems(1) = cRecordSet.GetFieldValue("SUM_NLINENUM")
listview.FindItem(szPrintName).SubItems(2) = cRecordSet.GetFieldValue("SUM_NPRINTNUM")
listview.FindItem(szPrintName).SubItems(3) = cRecordSet.GetFieldValue("SUM_NNOPRINTNUM")
cRecordSet.MoveNext
Loop
listview.Refresh

**************************************************************
cRecordSet.COpen szSQL, cDBConn, adOpenStatic, adLockReadOnly
改成
cRecordSet.Open szSQL, cDBConn, adOpenStatic, adLockReadOnly


¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥


引用是否做了?
zhengmenghua 2009-09-02
  • 打赏
  • 举报
回复
前后控件名不同是怎么回事?
jhone99 2009-09-02
  • 打赏
  • 举报
回复
结帖率:0.00%
【期刊论文复现】多元宇宙算法求解电力系统多目标优化问题(Matlab实现)内容概要:本文复现了期刊论文中提出的多元宇宙算法(Multi-Verse Optimizer, MVO)用于求解电力系统中的多目标优化调度问题,采用Matlab进行代码实现。该算法受宇宙中黑洞、白洞和虫洞等天文现象启发,通过数学建模模拟多目标搜索过程,具有较强的全局寻优能力和收敛性能。文中将其应用于典型的电力系统经济调度场景,如考虑燃料成本、排放量等多个优化目标的微电网或多能源系统调度问题,通过构建合理的数学模型和约束条件,实现对多个冲突目标的协同优化。同时,文章提供了完整的代码框架与仿真结果,便于读者理解和复现。; 适合人群:具备一定Matlab编程基础和优化算法基础知识的研究生、科研人员及从事电力系统优化调度工作的工程师。; 使用场景及目标:①学习和掌握新型智能优化算法——多元宇宙算法的基本原理与实现方法;②将其应用于电力系统经济调度、微电网优化、多目标决策等领域的模型求解;③为科研工作提供可复现的代码参考和技术支持。; 阅读建议:建议读者结合Matlab代码逐行理解算法实现细节,重点关注目标函数建模、约束处理及MVO算法核心迭代逻辑,并尝试在不同测试系统中进行参数调优与性能对比,以深入掌握其应用技巧。

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧