python error: the parameter "pControls" must be either a Tuple or a List
python error: the parameter "pControls" must be either a Tuple or a List
我的代码有问题,需要一些帮助。
我正在尝试获取每个 ID 的控件,以找到我正在寻找的控件,然后删除控件。
当我尝试这个时:
def clearEPG(self):
program_button = [elem.control for elem in self.program_buttons]
program_id = list()
position_X = list()
position_Y = list()
for elem in program_button:
program_id.append(elem.getId())
position_X.append(elem.getX())
position_Y.append(elem.getY())
program_id = map(str, program_id)
pos_X = map(str, position_X)
pos_Y = map(str, position_Y)
try:
for pos_X, pos_Y, prog_id in zip(pos_X, pos_Y, program_id):
if int(pos_Y) == 315:
#print type(prog_id)
program_button = self.getControl(int(prog_id))
#print type(program_id)
self.removeControls(program_button)
except RuntimeError:
for elem in self.program_buttons:
print program_id
try:
pass
#self.removeControl(elem.control)
except RuntimeError:
pass
显示错误:类型错误:参数"pControls"必须是元组或列表。
此行突出显示错误:
self.removeControls(program_button)
这是 prog_id 输出的列表:
NOTICE: 3002
NOTICE: 3003
NOTICE: 3004
NOTICE: 3005
这里是 prog_id 的类型:
NOTICE: <type 'str'>
NOTICE: <type 'str'>
NOTICE: <type 'str'>
NOTICE: <type 'str'>
你能帮我解决这个问题吗?
如果您只想删除一个控件,则应使用 removeControl
。
self.removeControl(program_button)
您将使用 removeControls
删除一组控件,因此该函数需要一个列表或元组。
编辑
我觉得奇怪的一件事是,在这段代码的开头,您确实为 program_button
分配了一个列表(错误的名称可能应该是 program_buttons
?)
program_button = [elem.control for elem in self.program_buttons]
但后来你用奇异值覆盖了它
program_button = self.getControl(int(prog_id))
这会导致您看到的问题。
我的代码有问题,需要一些帮助。
我正在尝试获取每个 ID 的控件,以找到我正在寻找的控件,然后删除控件。
当我尝试这个时:
def clearEPG(self):
program_button = [elem.control for elem in self.program_buttons]
program_id = list()
position_X = list()
position_Y = list()
for elem in program_button:
program_id.append(elem.getId())
position_X.append(elem.getX())
position_Y.append(elem.getY())
program_id = map(str, program_id)
pos_X = map(str, position_X)
pos_Y = map(str, position_Y)
try:
for pos_X, pos_Y, prog_id in zip(pos_X, pos_Y, program_id):
if int(pos_Y) == 315:
#print type(prog_id)
program_button = self.getControl(int(prog_id))
#print type(program_id)
self.removeControls(program_button)
except RuntimeError:
for elem in self.program_buttons:
print program_id
try:
pass
#self.removeControl(elem.control)
except RuntimeError:
pass
显示错误:类型错误:参数"pControls"必须是元组或列表。
此行突出显示错误:
self.removeControls(program_button)
这是 prog_id 输出的列表:
NOTICE: 3002
NOTICE: 3003
NOTICE: 3004
NOTICE: 3005
这里是 prog_id 的类型:
NOTICE: <type 'str'>
NOTICE: <type 'str'>
NOTICE: <type 'str'>
NOTICE: <type 'str'>
你能帮我解决这个问题吗?
如果您只想删除一个控件,则应使用 removeControl
。
self.removeControl(program_button)
您将使用 removeControls
删除一组控件,因此该函数需要一个列表或元组。
编辑
我觉得奇怪的一件事是,在这段代码的开头,您确实为 program_button
分配了一个列表(错误的名称可能应该是 program_buttons
?)
program_button = [elem.control for elem in self.program_buttons]
但后来你用奇异值覆盖了它
program_button = self.getControl(int(prog_id))
这会导致您看到的问题。