我的Microsoft Access数据库中有一个ListView对象,该对象设置为报表视图。当用户从此列表中选择一行时,我希望能够打开辅助表单并根据所选值进行填充。我正在使用正确的语法来捕获我需要的列值。我一直在寻找关于此的信息,但是我找不到符合我特定标准的任何信息。
以下是相关代码:
class Animal:
def __init__(self, name, species):
self.name = name
self.species = species
def getName(self):
return self.name
def getSpecies(self):
return self.species
def __del__(self):
print ("This came from del method")
此代码不断在FormID = Item.SubItems(0)行上抛出异常,声明它是无效的属性值。
有人知道我在这里做错了什么,或者有一个解决方法来完成我想做的事情?
答案 0 :(得分:0)
在您将FormID声明为变体的行FormID = Item.SubItems(0)
中,您正在为其分配一个对象,因此VBA期望SET FormID = Item.SubItems(0)
。
但是你想要的可能是FormID = CInt(Item.SubItems(0).Text)
答案 1 :(得分:0)
我将事件从ItemClick更改为Click,并使用ListView1.SelectedItem.ListSubItems(1).Text来提取列值。
感谢大家的评论。