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

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>
            欧美一区二区在线观看| 亚洲校园激情| 欧美精品偷拍| 亚洲一区二区三区久久 | 欧美不卡视频一区发布| 一区二区三区日韩| 国产精品天天看| 久久久久欧美精品| 美女图片一区二区| 在线视频精品一| 午夜精品视频在线观看一区二区 | 久久―日本道色综合久久| 欧美有码在线观看视频| 91久久国产精品91久久性色| 在线天堂一区av电影| 国产色综合久久| 91久久精品国产91久久| 欧美性大战久久久久| 久热国产精品| 国产精品白丝av嫩草影院| 亚洲欧美一区二区视频| 久久欧美肥婆一二区| 99精品国产热久久91蜜凸| 亚洲欧美伊人| aⅴ色国产欧美| 欧美在线你懂的| 亚洲视频网在线直播| 久久综合九色综合欧美狠狠| 亚洲伊人观看| 欧美www视频| 久久久一区二区| 欧美天堂亚洲电影院在线播放| 国产亚洲福利社区一区| 亚洲国产精品一区二区www| 国产精品自拍一区| 最近中文字幕日韩精品 | 韩国成人福利片在线播放| 亚洲电影在线观看| 国产亚洲精品久久飘花| 一本色道久久| 亚洲免费高清| 久久午夜精品| 久久网站免费| 国产欧美日韩免费| 亚洲一区bb| 中文久久精品| 欧美精品免费播放| 亚洲国产精品一区二区第一页| 久久午夜精品| 午夜国产精品视频| 欧美三级网址| 亚洲乱码国产乱码精品精可以看| 欧美激情第一页xxx| 欧美96在线丨欧| 黄色成人在线网站| 久久国产视频网| 久久久国产成人精品| 国产精品美女久久久免费| 亚洲精品一区在线观看| 99精品99久久久久久宅男| 欧美成人免费全部| 亚洲国产毛片完整版| 亚洲三级电影在线观看| 欧美chengren| 亚洲人成网站精品片在线观看| 国产精品jizz在线观看美国| 91久久久亚洲精品| 夜夜嗨av一区二区三区中文字幕| 亚洲一区二区精品| 午夜精品偷拍| 国产一区久久| 久久亚洲欧美| 亚洲精品1区| 亚洲中午字幕| 国产亚洲成人一区| 快射av在线播放一区| 欧美国产视频日韩| 一区二区高清在线| 欧美日韩综合久久| 亚洲性感激情| 米奇777超碰欧美日韩亚洲| 亚洲狠狠丁香婷婷综合久久久| 一区二区免费在线播放| 欧美一区免费| 在线观看欧美成人| 欧美日韩系列| 欧美一级播放| 欧美激情一二三区| 亚洲嫩草精品久久| 一区二区三区在线高清| 欧美区在线观看| 欧美亚洲日本网站| 亚洲国产天堂久久综合| 欧美一区二区三区四区在线| 亚洲成在人线av| 国产精品成人一区二区三区吃奶| 久久午夜精品| 一区二区三区四区国产精品| 国产精品午夜在线| 欧美高清视频一二三区| 亚洲欧美国产高清va在线播| 亚洲丁香婷深爱综合| 欧美一区二视频在线免费观看| 欧美国产一区二区| 亚洲摸下面视频| 亚洲经典自拍| 开元免费观看欧美电视剧网站| 国产精品久久久久久久浪潮网站 | 欧美一区二区三区免费看| 免费观看久久久4p| 亚洲欧美日韩在线观看a三区| 欧美视频一区二| 久久国产精品一区二区三区四区 | 伊甸园精品99久久久久久| 欧美日韩综合视频网址| 麻豆精品网站| 久久久99爱| 欧美一区二区三区四区在线观看地址| 亚洲区一区二区三区| 国产一区在线播放| 国产精品视频自拍| 欧美激情一区三区| 免费观看30秒视频久久| 久久国内精品视频| 午夜精品一区二区三区在线播放 | 久久久久久9999| 亚洲欧美成人一区二区三区| 亚洲国产精品激情在线观看| 国产一区二区日韩精品欧美精品 | 91久久精品一区二区三区| 亚洲一区二区综合| 夜夜嗨av一区二区三区网页| 最新日韩欧美| 亚洲黄色小视频| 在线观看日韩专区| 在线成人激情| 亚洲国产成人av在线| 在线播放亚洲一区| 在线视频成人| 亚洲精品国产精品久久清纯直播 | 欧美伦理91i| 欧美极品欧美精品欧美视频| 欧美激情成人在线视频| 欧美区日韩区| 欧美视频日韩视频| 欧美日韩另类一区| 国产精品久久久久婷婷| 国产精品亚洲综合| 国产尤物精品| 亚洲国产午夜| 夜夜嗨网站十八久久| 亚洲专区一区二区三区| 欧美在线国产| 免费成人在线视频网站| 亚洲国产高清一区| 一区二区三区av| 亚洲欧美日韩在线播放| 久久久www| 欧美激情第1页| 国产精品久久久久久久久久久久久| 久久精品道一区二区三区| 久久久噜噜噜久久中文字免| 免费在线欧美黄色| 欧美偷拍另类| 精品成人乱色一区二区| 亚洲欧洲日本mm| 亚洲无吗在线| 免费永久网站黄欧美| 一区二区欧美视频| 久久精品国产久精国产思思| 欧美激情一区在线观看| 国产女优一区| 亚洲九九爱视频| 欧美在线播放| 亚洲区在线播放| 性久久久久久久久| 欧美风情在线| 好看不卡的中文字幕| 99视频精品免费观看| 久久久久网址| 亚洲午夜免费福利视频| 久久久综合网站| 欧美日韩国产电影| 精品91免费| 欧美一级久久| 亚洲欧洲日本专区| 久久精品综合网| 国产精品你懂的在线欣赏| 亚洲欧洲精品一区二区三区波多野1战4 | 影院欧美亚洲| 在线一区二区三区做爰视频网站| 在线观看中文字幕不卡| 日韩午夜激情av| 久久嫩草精品久久久精品| 一区二区三区免费在线观看| 免费观看在线综合色| 国内成人精品一区| 欧美精品自拍偷拍动漫精品| 亚洲美女淫视频| 国产精品久久久久久久7电影 |