mensagem LB_ADDSTRING

Adiciona uma cadeia de caracteres a uma caixa de listagem. Se a caixa de listagem não tiver o estilo LBS_SORT , a cadeia de caracteres será adicionada ao final da lista. Caso contrário, a cadeia de caracteres será inserida na lista e a lista será classificada.

Parâmetros

wParam

Este parâmetro não é usado.

lParam

Um ponteiro para a cadeia de caracteres terminada em nulo que deve ser adicionada.

Se a caixa de listagem tiver um estilo desenhado pelo proprietário, mas não o estilo LBS_HASSTRINGS , esse parâmetro será armazenado como dados de item em vez de uma cadeia de caracteres. Você pode enviar as mensagens LB_GETITEMDATA e LB_SETITEMDATA para recuperar ou modificar os dados do item.

Valor retornado

O valor retornado é o índice baseado em zero da cadeia de caracteres na caixa de listagem. Se ocorrer um erro, o valor retornado será LB_ERR. Se não houver espaço suficiente para armazenar a nova cadeia de caracteres, o valor retornado será LB_ERRSPACE.

Comentários

Se a caixa de listagem tiver um estilo desenhado pelo proprietário e o estilo LBS_SORT , mas não o estilo LBS_HASSTRINGS , o sistema enviará a mensagem WM_COMPAREITEM uma ou mais vezes ao proprietário da caixa de listagem para colocar o novo item corretamente na caixa de listagem.

A mensagem LB_INITSTORAGE ajuda a acelerar a inicialização das caixas de listagem que têm um grande número de itens (mais de 100). Ele reserva a quantidade de memória especificada para que as mensagens LB_ADDSTRING subsequentes levem o menor tempo possível. Você pode usar estimativas para os parâmetros wParam e lParam . Se você superestimar, a memória extra será alocada; se você subestimar, a alocação normal será usada para itens que excedem o valor solicitado.

Se a caixa de listagem tiver o estilo WS_HSCROLL e você adicionar uma cadeia de caracteres maior que a caixa de listagem, envie uma mensagem LB_SETHORIZONTALEXTENT para garantir que a barra de rolagem horizontal seja exibida.

Para um aplicativo ANSI, o sistema converte o texto em uma caixa de listagem em Unicode usando CP_ACP. Isso pode causar problemas. Por exemplo, caracteres romanos acentuados em uma caixa de listagem não Unicode no Windows japonês sairão embaralhados. Para corrigir isso, compile o aplicativo como Unicode ou use uma caixa de listagem desenhada pelo proprietário.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho
Winuser.h (inclua Windows.h)

Confira também

Referência

LB_DELETESTRING

LB_INSERTSTRING

LB_SELECTSTRING

LB_SETHORIZONTALEXTENT

WM_COMPAREITEM