想用PyQt5网页收藏夹,读取数据库后自动生成动态菜单。
遇到的问题是,把数据写入后菜单生成正确,但发送的信号只能打开最后一个记录中的网页。
action=[]
i=0
for row in self.db_fav: # 遍历数据 row[0]为网页标题,row[1]为链接
w=row[0]
if len(title)>30:
title=title[0:30]+'..'
url=row[1]
action.append(QAction(QIcon(':/res/Resource/weball.png'), title,parent=menu))
menu.addAction(action[i])
action[i].triggered.connect(lambda: self.NewPage(url))
print(url)
i=i+1
print(url)显示的各链接是正确的,但生成的菜单项不管选择哪一个只能打开同一个网页。
难道在循环体中为菜单项设置触发事件指向一个函数是不可行的?还有没有办法实现这样的操作???
望前辈指点/、