在“详细信息”视图中,在Windows 7的Windows资源pipe理器列表视图( 据称不是列表视图 )中,可以在第一个( 名称 )列中启动select框。 你只需要在实际的名字之外开始。
“详细信息”视图中的默认样式列表视图控件也是如此。
但是,如果将列表视图控件设置为资源pipe理器样式(使用SetwindowTheme ),应该模仿Windows资源pipe理器,这不起作用。 您只能在第二列和后面的列中开始select。
Listview跳过第一列
Windows Store通用应用程序 – ListView的怪胎
只写在列表视图的第2列?
C#Windows通用列表视图绑定button到图标失败
如何同步ListViewcheckBox与select?(WIN32)
SetwindowTheme(listView1.Handle,"explorer",null);
有什么办法让列表视图模仿资源pipe理器的select风格?
我想没有设置来启用这种行为,这将不得不编码。 就像处理鼠标并触发select一样。 但我不知道该怎么做。
谢谢。
Ntb,我正在使用C ++ Builder,但这应该是纯粹的Win32问题。 我也用WinFormstesting了这个(因此上面的C#示例)。
如何正确更改ListView控件中的焦点项目?
C ++ ListView隐藏项目
c ++ winapi listview项目select,但没有突出显示
赢得10个UAP ListView条件分隔符
阻止列表视图resize列在winapi中不起作用
其实有一种模仿资源管理器选择行为的方法。 它需要大量额外的声明性工作,但这是可能的。
您需要通过未记录的LVM_QUERYINTERFACE消息获取未IListView接口(请注意,对于Windows Vista和Windows 7 +,接口声明和GUID是不同的)。 关于常量和声明的细节可以在这里找到:
软件分析师或者软件分析师Geoff Chappell的IListView
获得接口后,您只需调用SetSelectionFlags(1,1)方法即可。 瞧,你完成了。
有什么办法让列表视图模仿资源管理器的选择风格?
不, explorer主题中的SysListView32没有这样的行为。 现代资源管理器使用的控件实际上是DirectUIHwnd 。 而你无法使用其中之一。
获得DirectUIHwnd行为的唯一方法是自己编写代码。 我希望这是可能的,但我也希望这是很难实现的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。