m_local_filelist.ensurevisible(filelist_row, false); //使該行顯示可見
1、獲取控制項原來風格
dword dwstyle = m_list.getextendedstyle();
2、更改控制項擴充套件風格
m_list.setextendedstyle(m_list.getextendedstyle() | lvs_ex_checkboxes);
注:若手動建立控制項時,在create時的樣式裡,不能包含以上,應在create後,在更改控制項擴充套件風格
樣式型別:
dwstyle |= lvs_ex_fullrowselect;//選中某行使整行高亮(只適用與report風格的listctrl)
dwstyle |= lvs_ex_gridlines;//網格線(只適用與report風格的listctrl)
dwstyle |= lvs_ex_oneclickactivate ; //設定單擊啟用樣式
dwstyle |= lvs_ex_checkboxes; 設定checkbox樣式
dwstyle |= lvs_ex_infotip;//裝置列表項顯示提示資訊
m_local_filelist.setextendedstyle(dwstyle);
3、插入列表列名
m_alarmlist.insertcolumn(0, "編號", lvcfmt_left, width/4);
列名文字位置:
lvcfmt_left 居左 lvcfmt_right 居右 lvcfmt_center居中
4、設定列寬
m_list.setcolumnwidth(列值, 寬度);
5、插入列表第一行值,設定列表該行其他列值
int nrow = m_alarmlist.insertitem(0, "資訊一");
m_alarmlist.setitemtext(nrow, 1, "xx路口有滯留物!");
int nitem = m_list.getitemcount();
m_list.insertitem(nitem, strfilename, nicon);
m_list.setitemtext(nitem, 1, strsize);
6、設定指定行的繫結值,獲取指定項繫結值
m_list.setitemdata(int nitem, dword dwdata );
m_list.getitemdata(int nitem);
m_list.setimagelist(&m_listsmall,lvsil_small);//設定imagelist
m_list.insertcolumn(0,"col 1",lvcfmt_left,300,0);//設定列
m_list.insertcolumn(1,"col 2",lvcfmt_left,300,1);
m_list.insertcolumn(2,"col 3",lvcfmt_left,300,2);
m_list.insertitem(0,"item 1_1");//插入行
m_list.setitemtext(0,1,"item 1_2");//設定該行的不同列的顯示字元
m_list.setitemtext(0,2,"item 1_3");
listctrl的使用
獲取當前被選中的行, 並取出該行指定列的值
int nselect = m_filelist.getselectionmark();
m_filelist.getitemtext(nselect, 1, m_selectdata, sizeof(m_selectdata));
//設定列表文字顏色
m_alarmloglist.settextcolor(rgb(0, 0, 255));
//設定列表文字大小
cfont font;
verify(font.createfont(
12nheight
0nwidth
0nescapement
0norientation
fw_normalnweight
falsebitalic
falsebunderline
0cstrikeout
ansi_charsetncharset
out_default_precisnoutprecision
clip_default_precisnclipprecision
default_qualitynquality
default_pitch | ff_swiss, // npitchandfamily
_t("ariallpszfacename
m_alarmloglist.setfont(&font, true);
int nselect = m_listdevice.getselectionmark();
mfc 中的clistctrl簡介 (2008-08-12 10:12)
分類: mfc程式設計
以下未經說明,listctrl預設view 風格為report
相關類及處理函式
mfc:clistctrl類
sdk:以 「listview_」開頭的一些巨集。如 listview_insertcolumn
void ondblclklist2(nmhdr* pnmhdr, lresult* presult);
on_notify(nm_dblclk, idc_list2, ondblclklist2)
void cdlgtest::ondblclklist2(nmhdr* pnmhdr, lresult* presult)
1. clistctrl 風格
lvs_icon: 為每個item顯示大圖示
lvs_smallicon: 為每個item顯示小圖示
lvs_list: 顯示一列帶有小圖示的item
lvs_report: 顯示item詳細資料
直觀的理解:windows資源管理器,「檢視」標籤下的「大圖示,小圖示,列表,詳細資料」
2. 設定listctrl 風格及擴充套件風格
long lstyle;
lstyle = getwindowlong(m_list.m_hwnd, gwl_style);//獲取當前視窗style
lstyle &= ~lvs_typemask; //清除顯示方式位
lstyle |= lvs_report; //設定style
setwindowlong(m_list.m_hwnd, gwl_style, lstyle);//設定style
dword dwstyle = m_list.getextendedstyle();
dwstyle |= lvs_ex_fullrowselect;//選中某行使整行高亮(只適用與report風格的listctrl)
dwstyle |= lvs_ex_gridlines;//網格線(只適用與report風格的listctrl)
dwstyle |= lvs_ex_checkboxes;//item前生成checkbox控制項
m_list.setextendedstyle(dwstyle); //設定擴充套件風格
注:listview的style請查閱msdn
3. 插入資料
m_list.insertcolumn( 0, "id", lvcfmt_left, 40 );//插入列
m_list.insertcolumn( 1, "name", lvcfmt_left, 50 );
int nrow = m_list.insertitem(0, 「11」);//插入行
m_list.setitemtext(nrow, 1, 「jacky」);//設定資料
4. 一直選中item
選中style中的show selection always,或者在上面第2點中設定lvs_showselalways
5. 選中和取消選中一行
int nindex = 0;
//選中
m_list.setitemstate(nindex, lvis_selected|lvis_focused, lvis_selected|lvis_focused);
//取消選中
m_list.setitemstate(nindex, 0, lvis_selected|lvis_focused);
6. 得到listctrl中所有行的checkbox的狀態
m_list.setextendedstyle(lvs_ex_checkboxes);
Label控制項
在第一章,我們已經知道,任何乙個 vb 程式都是由操作介面及與之相應的程式 組成,而操作介面則是由諸如 命令按鈕控制項 標籤控制項 等控制項以及窗體共同組成。從本章開始,我們進入控制項的學習過程。與以後我們要學到的文字框控制項 textbox 不同的是,標籤控制項顯示的文字不能直接進行修改,要修改的...
常用控制項總結
標籤 label 常用屬性 caption,name,fontname,fontsize,borderstyle,backcolor,autosize,wordwrap。事件 文字框 text 常用屬性 value,name,controlsource,passwordchar,alignment,...
解決農行控制項
解決 農業銀行控制項 無法安裝華軟研究員驗證,確實有效。請您仔細閱讀以下內容,此內容是由多位支付寶專家和眾多使用者總結而成,相信對您解決問題會有幫助,同時感謝你對華夏的關注,謝謝。這是因為系統中沒有正確安裝農行安全控制項造成的。一般在網頁左下角有提示網頁上有錯誤。無法完成交易。客戶的瀏覽器有攔截提示...