当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 自身支持排序的ListCtrlVC里的CListCtrl是个很不好用的控件,特别是排序,实现起来很麻烦。
 

 

    摘要:作者: 哈尔滨 潘景岩---- 需要解决四个问题: ---- 首先,在应用程序视类的构造函数中创建视频窗口,在初始化函数中开始播放; ---- 其次,建立一个计时器。利用class vizard为wm_timer增加消息处理函数,以自动关闭视频窗口并显示应用程序主窗口; ---- 另外,为了便于从mciwnd子类化窗口的鼠标消息处理函数中,对应用程序视类的计时器处理函数进行控制,引入一个布尔型全局......
    摘要:今天仔细研究了一下差分法求运动的轮廓,简单用程序实现了一下,结果如下,差分法比较容易获得运动的轮廓,对于不运动的身体部分则不会显示,这样的好处是可以得到需要关注的运动部分,不运动的则不关心,但是如果需要得到整个人体的轮廓,该如何呢?我试着用程序记录前4帧的数据,然后叠加出来显示,看来效果不是很好。 还要继续考虑...关键部分的代码如下:main.cpp#ifdef _ch_#pragma pack......


自身支持排序的ListCtrl
自身支持排序的listctrl

关于排序的基本用法,有一篇很好的文章:asp?type_id=9&class_id=1&cata_id=1&article_id=73&search_term">http://www.vchelp.net/vchelp/zart/sortl.asp?type_id=9&class_id=1&cata_id=1&article_id=73&search_term= 【程序编程相关:Direct3D试玩 - 实现一个Ima

vc里的clistctrl是个很不好用的控件,特别是排序,实现起来很麻烦. 【推荐阅读:用Soap Toolkit调用WebSe

所以,在上面的基础上,重新写了一个自身支持排序的csoftlist,从某个意义上说,也算是实现文档与视图的真正分离. 【扩展信息:DirectShow中 Filter G

但是,在这个例子里也存在个问题:排序的实现是与数据源相关的,如果有若干个表需要排序的话,每个表都要写相应的代码,这是一件非常痛苦的事.

下面说说几个主要的地方.

1. csortlist是clistctrl的派生类 (好象是废话)

2. 要让csortlist自行排序,当然得让csortlist自己处理lvn_columnclick消息 on_notify_reflect(lvn_columnclick, onlvncolumnclick)   onlvncolumnclick的作用就是设置排序列,排序方式,最后调用sortitems().

3. 排序的具体实现,也就是callback listcompare(...)的实现:   基本要求: 让csortlist根据item进行排序,而与数据源无关.(当然这样也有不足之处,就是排序只能按文本排序了.如果你需要按数字排序的话,那就只有特殊处理了.)

   这里涉及到的最主要的函数是:   1)listcompare - 实现排序的回调函数   int callback csortlist::listcompare(lparam lparam1, lparam lparam2, lparam lparamsort);   2)clistctrl::finditem - 查找相应的item, 查找方式可指定   int finditem( lvfindinfo* pfindinfo, int nstart = -1 ) const;   finditem的具体细节请参考msdn.      基本思路:   1)listcompare的原型:传入的参数lparam1,lparam2是相应两行的itemdata;   2)finditem根据lparam1,lparam2得到相应的item;     finditem有多种查找方式(查找方式通过lvfindinfo->flags进行设置),这里只是根据itemdata进行查找.   3)再用getitemtext得到排序列的itemtext;   4)最后就是比较itemtext了.   4. 显示指明排序方式的标记   简单地说,就是给clistctrl的cheadctrl指定一个cimagelist,根据需要指定column要显示的image.
...   下一页

    摘要:wince下显示gif、jpeg以及其它格式的图像文件本文是使用microsoft® embedded visual c++®(evc++)为pocket pc开发c++应用程序系列文章的第二篇。本文介绍了如何通过免费的cvoimage类库使用pocket pc的imgdecmp.dll图像处理程序。 本文是使用microsoft® embedded visual c++&......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE