Partilhar via


Classe CListBox

Fornece a funcionalidade de um Windows lista caixa.

class CListBox : public CWnd

Comentários

Uma caixa de listagem exibe uma lista de itens, sistema autônomo nomes de arquivos que o usuário pode exibir e selecionar.

Em uma única seleção lista caixa, o usuário pode selecionar somente um item.Em uma seleção múltipla lista caixa, um intervalo de itens pode ser selecionada.Quando o usuário seleciona um item, ele é realçado e o lista caixa envia uma mensagem de notificação para a janela pai.

Você pode criar um lista caixa de um modelo de caixa de diálogo ou diretamente em seu código.Para criar diretamente, construir o CListBox objeto e, em seguida, ligue para o Criar função de membro para criar o Windows lista - controle de caixa e anexá-lo à CListBox objeto. Para usar um lista caixa em um modelo de caixa de diálogo, declare um lista - caixa variável na sua classe de caixa de diálogo e, em seguida, use DDX_Control na sua classe de caixa de diálogo DoDataExchange função para conectar-se a variável de membro ao controle. (isso é concluído para você automaticamente quando você adiciona uma variável de controle a sua classe de caixa de diálogo.)

Construção pode ser um processo em uma etapa em uma classe derivada de CListBox. Escrever um construtor para a classe derivada e chamar Criar de dentro do construtor.

Se você quiser controlar mensagens de notificação do Windows enviadas por uma caixa de listagem para seu pai (geralmente uma classe derivada de CDialog), adicionar uma função de membro de manipulador de mensagens e entrada de MAP da mensagem para a classe pai para cada mensagem.

Cada entrada de MAP da mensagem possui o seguinte formato:

ON_Notification( id, memberFxn )

em que id Especifica a ID da janela filho do lista-enviando a notificação de controle de caixa e memberFxn é o nome da função de membro pai que você tenha escrito para manipular a notificação.

Protótipo de função do pai é o seguinte:

afx_msg void memberFxn( );

Veja a seguir uma lista de entradas potenciais do MAP da mensagem e uma descrição dos casos em que eles seriam enviados para o pai:

  • ON_LBN_DBLCLK   O usuário clica duas vezes em uma seqüência de caracteres em um lista caixa.Somente um lista caixa que tem o LBS_NOTIFY estilo enviará essa mensagem de notificação.

  • ON_LBN_ERRSPACE   O lista caixa não é possível alocar memória suficiente para atender a solicitação.

  • ON_LBN_KILLFOCUS   O lista caixa está perdendo o foco de entrada.

  • ON_LBN_SELCANCEL   O corrente lista-caixa de seleção é cancelada.Essa mensagem é enviada somente quando um lista caixa tem o LBS_NOTIFY estilo.

  • ON_LBN_SELCHANGE   A seleção no lista caixa foi alterada.Essa notificação não é enviada se a seleção será alterada, a CListBox::SetCurSelfunção de membro .Esta notificação só se aplica a uma caixa de listagem que tem o LBS_NOTIFY estilo.The LBN_SELCHANGE mensagem de notificação será enviada para uma seleção múltipla lista caixa sempre que o usuário pressiona uma tecla de direção, mesmo se a seleção não for alterado.

  • ON_LBN_SETFOCUS   O lista caixa recebe o foco de entrada.

  • ON_WM_CHARTOITEM   Um desenho do proprietário lista caixa que não possui nenhum seqüências recebe um WM_CHAR mensagem.

  • ON_WM_VKEYTOITEM   Uma caixa de listagem com o LBS_WANTKEYBOARDINPUT estilo recebe um WM_KEYDOWN mensagem.

Se você criar um CListBox objeto dentro de uma caixa de diálogo (por meio de um recurso de caixa de diálogo), o CListBox objeto é destruído automaticamente quando o usuário fecha a caixa de diálogo.

Se você criar um CListBox objeto dentro de uma janela, talvez seja necessário destruir o CListBox objeto. Se você criar o CListBox objeto na pilha, ele será destruído automaticamente. Se você criar o CListBox objeto no heap usando o novo função, você deve telefonar Excluir no objeto para destruí-lo quando o usuário fecha a janela pai.

Se você alocar toda a memória no CListBox objeto, substituir o CListBox Destructor para descartar a alocação.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Tarefas

Exemplo CTRLTEST: Implementa Personalizar Controls

Referência

Classe CWnd

Gráfico de hierarquia

Classe CWnd

Classe CButton

Classe CComboBox

Classe CEdit

Classe CScrollBar

Classe CStatic

Outros recursos

CListBox membros