Share via


LB_ADDSTRING訊息

將字串新增至清單方塊。 如果清單方塊沒有 LBS_SORT 樣式,則會將字串新增至清單結尾。 否則,字串會插入清單中,並排序清單。

參數

wParam

不使用這個參數。

lParam

要加入之 Null 終止字串的指標。

如果清單方塊具有擁有者繪製的樣式,但不是 LBS_HASSTRINGS 樣式,此參數會儲存為專案資料,而不是字串。 您可以傳送 LB_GETITEMDATALB_SETITEMDATA 訊息來擷取或修改專案資料。

傳回值

傳回值是清單方塊中字串以零起始的索引。 如果發生錯誤,則會LB_ERR傳回值。 如果空間不足而無法儲存新字串,則會LB_ERRSPACE傳回值。

備註

如果清單方塊具有擁有者繪製的樣式和 LBS_SORT 樣式,但不是 LBS_HASSTRINGS 樣式,則系統會將 WM_COMPAREITEM 訊息一或多次傳送給清單方塊的擁有者,以在清單方塊中正確放置新專案。

LB_INITSTORAGE訊息可協助加速大量專案 (超過 100 個) 的清單方塊初始化。 它會保留指定的記憶體數量,以便後續 LB_ADDSTRING 訊息需要最短的時間。 您可以使用 wParamlParam 參數的估計值。 如果您超額,則會配置額外的記憶體;如果您忽略,一般配置會用於超過要求金額的專案。

如果清單方塊具有 WS_HSCROLL 樣式,而且您新增比清單方塊寬的字串,請傳送 LB_SETHORIZONTALEXTENT 訊息,以確保水準捲軸出現。

對於 ANSI 應用程式,系統會使用 CP_ACP,將清單方塊中的文字轉換成 Unicode。 這可能會造成問題。 例如,日文 Windows 中非 Unicode 清單方塊中的輔色羅馬字元會以大寫顯示。 若要修正此問題,請將應用程式編譯為 Unicode 或使用擁有者繪製的清單方塊。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限桌面應用程式]
標頭
Winuser.h (包括 Windows.h)

另請參閱

參考

LB_DELETESTRING

LB_INSERTSTRING

LB_SELECTSTRING

LB_SETHORIZONTALEXTENT

WM_COMPAREITEM