Alterando estilos de controle de lista
Você pode alterar o estilo de janela de um controle de lista (CListCtrl) a qualquer momento depois de criá-lo. Alterando o estilo de janela, você altera o tipo de exibição que o controle usa. Por exemplo, para emular o Explorer, você pode fornecer itens de menu ou botões de barra de ferramentas para alternar o controle entre diferentes exibições: exibição de ícone, exibição de lista e assim por diante.
Por exemplo, quando o usuário seleciona seu item de menu, você pode fazer uma chamada para GetWindowLong para recuperar o estilo atual do controle e, em seguida, chamar SetWindowLong para redefinir o estilo. Para obter mais informações, confira Como usar controles de exibição de lista no SDK do Windows.
Os estilos disponíveis estão listados em Criar. Os estilos LVS_ICON, LVS_SMALLICON, LVS_LIST e LVS_REPORT designam as quatro exibições de controle de lista.
Estilos estendidos
Além dos estilos padrão para um controle de lista, há outro conjunto, conhecido como estilos estendidos. Esses estilos, discutidos em Estilos de Exibição de Lista Estendida no SDK do Windows, fornecem uma variedade de recursos úteis que personalizam o comportamento do controle de lista. Para implementar o comportamento de um determinado estilo (como a seleção via passagem do mouse), faça uma chamada para CListCtrl::SetExtendedStyle, passando o estilo necessário. O seguinte exemplo demonstra a chamada de função:
m_ListCtrl.SetExtendedStyle(LVS_EX_TRACKSELECT | LVS_EX_ONECLICKACTIVATE);
Observação
Para que a seleção via passagem do mouse funcione, você também precisa ter LVS_EX_ONECLICKACTIVATE ou LVS_EX_TWOCLICKACTIVATE ativado.