7章.CListCtrlクラス リストコントロール 7−9.ListView_SetCheckStateが「定義されていない識別子です。」(C2065)になる |
ヘルプ(MSDN)の「Extended list view styles」からすると自分でListView_SetCheckStateマクロを取り込まないといけないようです。 LVM_SETITEMSTATEを使うという手もありますが、MFCならCListCtrl::SetCheckが使えます。 例) //プログラム中に記述します。 #ifndef ListView_SetCheckState #define ListView_SetCheckState(hwndLV, i, fCheck) \ ListView_SetItemState(hwndLV, i, \ INDEXTOSTATEIMAGEMASK((fCheck)+1), LVIS_STATEIMAGEMASK) #endif void CTest0031Dlg::OnButton37() { // TODO: この位置にコントロール通知ハンドラ用のコードを追加してください //MFCの場合、、、 /* CListCtrl *clc=(CListCtrl *)GetDlgItem(IDC_LIST1); clc->SetCheck(1,!clc->GetCheck(1));*/ //SDKの場合、、、 HWND hwn=GetDlgItem(IDC_LIST1)->m_hWnd; ListView_SetCheckState(hwn,1,!ListView_GetCheckState(hwn,1)); } |
Top へ戻る |