0
我使用SetItemDataPtr設置列表框項目指針到我的數據,但我不能得到正確的指針時,我打電話給GetItemDataPtr?CListBox設置/獲取錯誤的數據指針
對於離:
//設置數據指針時初始化列表框 m_lstBox.SetItemDataPtr(0,指針); //指針= 0x0123CDEF .....
//在DrawItem() pointer = GetItemDataPtr(lpDrawItemStruct-> itemID); // lpDrawItemStruct->的itemid = 0
// 指針!= 0x0123CDEF
這是爲什麼?
LR。
我做了簡單的測試,沒有任何這些操作,我想通了什麼發生。調用SetItemDataPtr後,我調用SetItemData爲item設置另一個值。當我調用GetItemDataPtr時,我得到了我在SetItemData中傳遞的值。我現在混淆了這兩個函數的用法。 – jAckOdE
你只能有一個或另一個。他們使用相同的存儲。 Data vs DataPtr版本爲64位和32位操作系統提供了正確的語義。 –