#pragma comment(lib,"comctl32.lib")//導入庫comctl32.lib
#define max_loadstring 100
#define idc_listview 1
// 全域性變數:
hinstance hinst; // 當前例項
tchar sztitle[max_loadstring]; // 標題欄文字
tchar szwindowclass[max_loadstring]; // 主視窗類名
// 此**模組中包含的函式的前向宣告:
atom myregisterclass(hinstance hinstance);
bool initinstance(hinstance, int);
lresult callback wndproc(hwnd, uint, wparam, lparam);
int_ptr callback about(hwnd, uint, wparam, lparam);
void additemoflistview(int row,hwnd hlistview);
int apientry _twinmain(hinstance hinstance,
hinstance hprevinstance,
lptstr lpcmdline,
int ncmdshow)
hacceltable = loadaccelerators(hinstance, makeintresource(idc_listviewtest));
// 主訊息迴圈:
while (getmessage(&msg, null, 0, 0))}
return (int) msg.wparam;}
//// 函式: myregisterclass()
//// 目的: 註冊視窗類。
//// 注釋:
//// 僅當希望
// 此**與新增到 windows 95 中的「registerclas***」
// 函式之前的 win32 系統相容時,才需要此函式及其用法。呼叫此函式十分重要,
// 這樣應用程式就可以獲得關聯的
// 「格式正確的」小圖示。
//atom myregisterclass(hinstance hinstance) //
// 函式: initinstance(hinstance, int)
//// 目的: 儲存例項控制代碼並建立主視窗
//// 注釋:
//// 在此函式中,我們在全域性變數中儲存例項控制代碼並
// 建立和顯示主程式視窗。
//bool initinstance(hinstance hinstance, int ncmdshow)
showwindow(hwnd, ncmdshow);
updatewindow(hwnd);
return true;}
//// 函式: wndproc(hwnd, uint, wparam, lparam)
//// 目的: 處理主視窗的訊息。
//// wm_command - 處理應用程式選單
// wm_paint - 繪製主視窗
// wm_destroy - 傳送退出訊息並返回
////
tchar buffer[20];
tchar listindex[100][256]=,,,,,,};
tchar listname[100][256]=,,,,,};
tchar listage[100][256]=,,,,,};
tchar list***[100][256]=,,,,,};
tchar listedu[100][256]=,,,,,};
lresult callback wndproc(hwnd hwnd, uint message, wparam wparam, lparam lparam)
break;
}case wm_notify:
break;
case cdds_itemprepaint:
break;
case (cdds_itemprepaint|cdds_subitem):
return cdrf_dodefault;
} break;
} }
}switch(loword(wparam))
} //if(((lpnmhdr)lparam)->code==nm_click)
//;// wsprintf(szbuffer,text("你所選中的是第%d行"),iselect+1);
// if(iselect!=-1)
// //}
if(((lpnmhdr)lparam)->code==nm_dblclk)
;wsprintf(szbuffer,text("你所選中的是第%d行"),iselect+1);
if(iselect!=-1)
} break;}
}break;
}case wm_size:
case wm_command:
wmid = loword(wparam);
wmevent = hiword(wparam);
// 分析選單選擇:
switch (wmid)
break;
}case id_inserlie:
case id_getcount:
case id_getinfo:
;wsprintf(szbuffer,text("你所選中的是第%d行"),iselect+1);
if(iselect!=-1)
break;
}default:
return defwindowproc(hwnd, message, wparam, lparam);
}break;
case wm_paint:
hdc = beginpaint(hwnd, &ps);
// todo: 在此新增任意繪圖**...
endpaint(hwnd, &ps);
break;
case wm_destroy:
postquitmessage(0);
break;
default:
return defwindowproc(hwnd, message, wparam, lparam);
}return 0;}
// 「關於」框的訊息處理程式。
int_ptr callback about(hwnd hdlg, uint message, wparam wparam, lparam lparam)
break;
}return (int_ptr)false;
}void additemoflistview(int row,hwnd hlistview)
tchar buffer[20];
lv_item lvi;
lvi.mask = lvif_text;
lvi.iitem = row;
lvi.isubitem = 0;
wsprintf(buffer,listindex[row]);
lvi.psztext =buffer;
sendmessage(hlistview,lvm_insertitem,0,(lparam)&lvi);
/lvi.isubitem++;
zeromemory(buffer,sizeof(buffer)/sizeof(tchar));
wsprintf(buffer,listname[row]);
lvi.psztext =buffer;
sendmessage(hlistview,lvm_setitem,0,(lparam)&lvi);
/zeromemory(buffer,sizeof(buffer)/sizeof(tchar));
wsprintf(buffer,listage[row]);
lvi.psztext =buffer;
sendmessage(hlistview,lvm_setitem,0,(lparam)&lvi);
/zeromemory(buffer,sizeof(buffer)/sizeof(tchar));
wsprintf(buffer,list***[row]);
lvi.psztext =buffer;
sendmessage(hlistview,lvm_setitem,0,(lparam)&lvi);
zeromemory(buffer,sizeof(buffer)/sizeof(tchar));
wsprintf(buffer,listedu[row]);
lvi.psztext =buffer;
sendmessage(hlistview,lvm_setitem,0,(lparam)&lvi); }
C ListBox 列表框控制項
列表框 listbox 將所提供的內容以列表的形式顯示出來,並可以選擇其中的一項或多項內容,從形式上比使用核取方塊更好一些。例如,在 word 中設定字型時介面如下圖所示。在列表框控制項中有一些屬性與前面介紹的控制項不同,如下表所示。列表框還提供了一些方法來操作列表框中的選項,由於列表框中的選項是乙...
MFC控制項(一)(列表框)
列表框控制項新增變數 clistbox m list1 clistbox m list2 按鈕變數 cbutton m in cbutton m out 文字框控制項變數 cstring m item 1 初始化時,將按鈕in out狀態設為不可用 m in.enablewindow false m...
可輸入的Web下拉列表框控制項
vs2005提供的web下拉列表框 不支援輸入,只能選擇,我們可以繼承該控制項來支援輸入功能,實現的原理很簡單,就是增加乙個textbox控制項疊加在下拉列表框上,客戶端通過指令碼來同步這兩個控制項的值,先看看服務端 using system using system.collections.gen...