excel VBA listview,点击list的空白处无法取消选中。
excelVBAListView控件6.0,默认有一行被选中,点击列表的空白处也无法取消。要求:点击空白处的地方,清空选中项。求代码。要求:单击空白处,清空选中项。...
excel VBA ListView控件 6.0,默认有一行被选中,点击列表的空白处也无法取消。
要求:点击空白处的地方,清空选中项。求代码。
要求:单击空白处,清空选中项。 展开
要求:点击空白处的地方,清空选中项。求代码。
要求:单击空白处,清空选中项。 展开
2个回答
展开全部
在VBA里编程时,这个控件是存在这种问题的,选中后,就无法恢复到“无选中项”的状态。
没有直接的解决办法,但可以取折中方法:
即在listview中添加一个“未选中”项,放在第一个选项,然后再加载其他选项。这样就可以通过指定list的索引来选中该项。
当然,这样处理需要在执行代码中提前判断一下,是否选择了“未选中”项,以便排错处理。
没有直接的解决办法,但可以取折中方法:
即在listview中添加一个“未选中”项,放在第一个选项,然后再加载其他选项。这样就可以通过指定list的索引来选中该项。
当然,这样处理需要在执行代码中提前判断一下,是否选择了“未选中”项,以便排错处理。
追问
看不明白。如何添加未选中项?给个代码看看吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你试下在LISTVIEW 单击事件中插入以下代码
设控件名为 YS01
修改下
Private Sub YS01_Click()
IF YS01.SelectedItem Is Nothing Then
YS01.ListItems(YS01.SelectedItem.Index).Selected = false
END IF
END SUB
设控件名为 YS01
修改下
Private Sub YS01_Click()
IF YS01.SelectedItem Is Nothing Then
YS01.ListItems(YS01.SelectedItem.Index).Selected = false
END IF
END SUB
更多追问追答
追问
不行。既然selecteditem是nothing,那么selecteditem.index还有值吗?所以不行,逻辑都不通。
追答
哦,对了,这点忘记了。那要不不用单击事件,用双击事件,if 判断去掉?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询