青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Tauruser

Enjoy Every Day
posts - 34, comments - 95, trackbacks - 0, articles - 5
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

CListCtrl For Beginners(轉(zhuǎn)載)

Posted on 2007-03-07 21:23 Tauruser 閱讀(1727) 評論(0)  編輯 收藏 引用 所屬分類: MFC

The List Control (MFC CListCtrl class) is the type of control that the Windows Explorer uses for it's right-side pane, but figuring out how to use the control can be a different kind of pain. The control is usually used only in "report view", which provides columns for each item. The following shows the basics of adding data to a List Control:

???? int ?Index;
// ?Insert?columns
ListCtrl.InsertColumn( 0 ,? " One " ,?LVCFMT_LEFT,? - 1 ,? 0 );
ListCtrl.InsertColumn(
1 ,? " Two " ,?LVCFMT_LEFT,? - 1 ,? 1 );
// ?Insert?first?row
Index? = ?ListCtrl.InsertItem(LVIF_TEXT,? 0 ,? " One?one " ,? 0 ,? 0 ,? 0 ,?NULL);
ListCtrl.SetItem(Index,?
1 ,?LVIF_TEXT,? " One?two " ,? 0 ,? 0 ,? 0 ,?NULL);
// ?Insert?second?row
Index? = ?ListCtrl.InsertItem(LVIF_TEXT,? 1 ,? " Two?one " ,? 0 ,? 0 ,? 0 ,?NULL);
ListCtrl.SetItem(Index,?
1 ,?LVIF_TEXT,? " Two?two " ,? 0 ,? 0 ,? 0 ,?NULL);
// ?Set?column?widths?(an?optional?nice?touch)
ListCtrl.SetColumnWidth( 0 ,?LVSCW_AUTOSIZE);
ListCtrl.SetColumnWidth(
1 ,?LVSCW_AUTOSIZE);

If you are using CListView, then you will need to use something such as the following to access the CListCtrl:

CListCtrl?&ListCtrl?=?GetListCtrl();

Note that for these to work, the control must have the "LVS_REPORT" style. For list controls in dialogs, including dialogs for CFormView, this style can be set in the dialog editor. If you are using CListView or you are creating list controls using Create, the style can be set in a PreCreateWindow override, as in:

BOOL?CDumpView::PreCreateWindow(CREATESTRUCT&?cs)?{
cs.style?
|=?LVS_REPORT;
return?CListView::PreCreateWindow(cs);
}


Getting a Count of Columns

The solution for determining the number of columns is not obvious. You must get the header control from the list control and get the number of items (rows) in the header control. So I suggest putting the following in your header:

CHeaderCtrl?*GetHeaderCtrl()?const?{return?(CHeaderCtrl*)GetDlgItem(0);};
int?GetColumnsCount()?const?{return?GetHeaderCtrl()->GetItemCount();};


Deleting All Columns

Using GetColumnsCount() from above, it is easy to delete all columns.

void?CListControl::DeleteAllColumns()?{
????
int?i,?n;
n?
=?GetColumnsCount();
for?(i=0;?i<n;?++i)
????DeleteColumn(
0);
}

Confusing Terminology


Microsoft has made things very confusing because the Platform SDK name for a listbox is "ListBox Control" but MFC programmers usually use "list control" to refer to an instance of the CListCtrl class, which is confusing. Also, the MFC class name for a "List View Control" is CListCtrl and CListView is the view class for it. The MFC class name for a "ListBox Control" is CListBox so we would expect the view class for it to also be CListView except there is not a view class. The following summarizes this.

Platform SDK name:List Boxes
Window class name: ListBox (See under "Predefined Controls" in User Controls and the documentation for CreateWindow and CreateWindowEx)
MFC class name:CListBox
MFC view class name: none

Platform SDK name:ListView Control
Window class name: SysListView32 (use WC_LISTVIEW in source code instead, which is defined as "SysListView32")
MFC class name:CListCtrl
MFC view class name:CListView























青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美综合v| 亚洲大片精品永久免费| 亚洲美女黄色| 欧美电影打屁股sp| 欧美成人综合在线| 亚洲黑丝在线| 欧美成年网站| 亚洲人成网站色ww在线| 亚洲精品在线看| 一本色道精品久久一区二区三区| 亚洲欧洲在线一区| 亚洲午夜在线视频| 欧美一区三区三区高中清蜜桃| 欧美在线啊v一区| 免费在线国产精品| 欧美视频一区| 韩国女主播一区二区三区| 亚洲激情一区| 这里只有精品视频| 久久视频精品在线| 国产精品主播| 国产亚洲综合精品| 99视频在线观看一区三区| 亚洲欧美电影在线观看| 久久精品麻豆| 91久久精品国产91性色| 亚洲午夜久久久| 免费成人高清| 国产精品自拍三区| 亚洲激情国产| 欧美一区二区三区另类 | 欧美一区二区三区视频免费| 久久综合色综合88| 中文av一区特黄| 久久久蜜桃精品| 欧美三区美女| 亚洲免费观看高清在线观看 | 欧美xart系列在线观看| 亚洲少妇诱惑| 欧美黑人一区二区三区| 国产一区日韩二区欧美三区| 一区二区三区精品国产| 欧美成年人视频网站欧美| 亚洲一区高清| 欧美日韩国产限制| 亚洲第一精品福利| 久久久7777| 亚洲自拍偷拍福利| 欧美视频一区| 亚洲色图综合久久| 亚洲经典在线| 欧美电影在线免费观看网站| 国产主播一区二区三区四区| 性欧美大战久久久久久久久| 一区二区日韩| 欧美日韩人人澡狠狠躁视频| 一色屋精品视频免费看| 久久久久久久网| 欧美亚洲综合另类| 国产美女诱惑一区二区| 欧美一级专区免费大片| 亚洲欧美国产视频| 国产农村妇女精品| 欧美一级日韩一级| 亚洲男人第一av网站| 国产精品毛片a∨一区二区三区|国| 中日韩在线视频| 亚洲精选91| 欧美午夜影院| 午夜久久tv| 欧美一区二区高清| 影音欧美亚洲| 亚洲国产日韩综合一区| 欧美精品一区二区三区在线播放 | 国产午夜亚洲精品羞羞网站| 性久久久久久久久| 性一交一乱一区二区洋洋av| 国产视频一区二区三区在线观看| 久久精品国产成人| 久久免费视频在线| 亚洲欧洲另类| 夜夜嗨av一区二区三区四区| 国产精品美女xx| 久久精品一区二区三区不卡| 久久久久久噜噜噜久久久精品| 伊人久久亚洲影院| 亚洲欧洲日本专区| 国产美女扒开尿口久久久| 久久综合伊人| 欧美激情在线观看| 欧美在线精品一区| 欧美成人免费一级人片100| 亚洲视频一区二区免费在线观看| 亚洲一区二区av电影| 一区在线视频观看| 99re6热在线精品视频播放速度| 国产精品一区二区久激情瑜伽| 久久视频这里只有精品| 欧美另类在线播放| 久久久久久日产精品| 欧美激情综合网| 欧美与黑人午夜性猛交久久久| 久久久人成影片一区二区三区| 亚洲香蕉成视频在线观看 | 欧美亚洲第一页| 久久亚洲欧洲| 国产精品久久久久久久电影| 老司机一区二区| 国产精品久久久久毛片软件 | 欧美激情亚洲另类| 国产精品香蕉在线观看| 欧美高清日韩| 国产午夜精品美女视频明星a级 | 欧美国产日韩精品免费观看| 亚洲嫩草精品久久| 裸体素人女欧美日韩| 久久国产精品网站| 欧美色综合天天久久综合精品| 欧美xxxx在线观看| 含羞草久久爱69一区| 国产精品99久久久久久久女警| 亚洲国产欧美在线人成| 午夜天堂精品久久久久| 亚洲宅男天堂在线观看无病毒| 可以免费看不卡的av网站| 欧美亚洲网站| 国产精品久久久久久久久果冻传媒| 亚洲欧洲日产国产网站| 欧美www视频| 久久综合狠狠综合久久激情| 国产精品综合不卡av| 在线视频精品一区| 亚洲专区在线| 国产精品成人一区二区网站软件 | 日韩视频免费在线| 亚洲欧洲综合| 欧美国产高潮xxxx1819| 欧美成人激情视频免费观看| 国内精品久久久久伊人av| 亚洲午夜一区二区| 午夜精品国产| 国产精品午夜国产小视频| 亚洲一区二区三区在线| 午夜精品免费视频| 国产农村妇女毛片精品久久莱园子 | 老司机一区二区三区| 久久久一区二区三区| 国产曰批免费观看久久久| 欧美一区国产一区| 欧美成人中文字幕| 亚洲毛片一区| 欧美午夜片在线观看| 亚洲在线观看免费| 久久免费视频在线| 91久久精品国产91性色tv| 欧美极品在线观看| 亚洲婷婷在线| 久久久久九九九| 亚洲国产精品传媒在线观看| 欧美精品成人一区二区在线观看 | 欧美日韩在线播放三区| 夜夜夜精品看看| 欧美伊人久久久久久久久影院 | 欧美日韩一区二区三区视频| 亚洲精品免费看| 亚洲在线网站| 精品999在线播放| 欧美精品久久一区二区| 亚洲一区精品视频| 欧美多人爱爱视频网站| 一区二区三区久久网| 国产精品系列在线| 免费日韩一区二区| 亚洲图片你懂的| 欧美.日韩.国产.一区.二区| 一区二区激情小说| 国产亚洲精品久久久| 欧美国产三区| 午夜精品久久久99热福利| 亚洲第一页中文字幕| 亚洲欧美在线免费| 亚洲七七久久综合桃花剧情介绍| 欧美日精品一区视频| 久久久水蜜桃av免费网站| 99日韩精品| 韩日成人在线| 欧美系列一区| 欧美高清视频一区二区| 久久成人一区| 亚洲影视九九影院在线观看| 欧美99久久| 久久精品国产精品| 99国产精品久久久| 加勒比av一区二区| 国产精品综合网站| 国产精品二区影院| 欧美日韩精品福利| 欧美96在线丨欧| 久久精品亚洲精品| 午夜在线视频观看日韩17c|