C 在Win32的ListView中保持行永久选中
我正在使用Win32 ListView32 选中ListView中的行时,该行为深蓝色。 可以通过单击该行或通过调用C 在Win32的ListView中保持行永久选中,c,listview,winapi,mfc,selection,C,Listview,Winapi,Mfc,Selection,我正在使用Win32 ListView32 选中ListView中的行时,该行为深蓝色。 可以通过单击该行或通过调用ListView\u SetItemState(hwnd、index、LVIS\u selected、LVIS\u selected)以编程方式选择该行 当ListView控件焦点丢失时,所选行变为灰色 如何使所选行保持深蓝色,而不考虑焦点?使用窗口样式。我认为它不能保持深蓝色,因为这是该控件具有焦点的指示器。“大概您是在OnInitDialog处理程序中执行此操作的?如果是,您需
ListView\u SetItemState(hwnd、index、LVIS\u selected、LVIS\u selected)以编程方式选择该行代码>
当ListView控件焦点丢失时,所选行变为灰色
如何使所选行保持深蓝色,而不考虑焦点?使用窗口样式。我认为它不能保持深蓝色,因为这是该控件具有焦点的指示器。“大概您是在OnInitDialog处理程序中执行此操作的?如果是,您需要
将焦点设置为列表控件,并从OnInitDialog返回FALSE。“如果您使用的是VC6.0。您可以将属性设置为ListView的“始终显示所选内容”。而ListView将由VC6.0定义为LVS\u SHOWSELALWAYS
资源文件中控件的定义如下所示:
CONTROL "List2",IDC_LIST_MEMBER,"SysListView32",LVS_REPORT |
LVS_SHOWSELALWAYS | LVS_EDITLABELS | WS_BORDER |
WS_TABSTOP,7,64,514,187
并且所选项目将高亮显示。对于我的程序,默认背景颜色为白色,默认选定和聚焦颜色为蓝色,默认选定但失去聚焦的颜色为灰色(当usr单击其他控件时)。如果此时列表视图显示为灰色,则列表视图已具有LVS\u showselavays
样式。您需要更改行的颜色。它已被选中。