pipi到这里拿剩下的分数.(300分)

  • 主题发起人 主题发起人 cAkk
  • 开始时间 开始时间
C

cAkk

Unregistered / Unconfirmed
GUEST, unregistred user!
恭喜!恭喜! 你要创单次得分纪录了. :-)

问题讨论见这里:
http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=205870
 
离线写的好辛苦,没有来得及贴出来

打开HKEY_CLASSES_ROOT/.xxx,如成功,
如果不出现下面的例外,则不显示扩展名:

举个例子:
HKEY_CLASSES_ROOT/.sys 存在,其值是sysfile
找到HKEY_CLASSES_ROOT/sysfile,它下面有一个值叫AlwaysShowExt,
它实际的值并不重要,只要有它,不管如何都显示扩展名。
因此,sys文件不管如何 都显示扩展名

另外,我认为用SHGetPathFromIDList全部找fullpath name
1、写起程序来更简单,不用象现在要判断这么多东西,又注册
表又什么,找来找去。每个文件的文件名取出来,不用考虑显不显示
扩展名。只需要 for...do if xxx=yyy then ... 就可以了
2、即使就是找全部文件名,一个目录下能有几个文件,
以现在的cpu的速度,感觉不出来它变慢,象这样只是执行
有限次数的操作一般可以不考虑这点速度问题,只需考虑
写程序方不方便

你们可真是舒服,一天24小时守住大富翁,我白天在办公室
上网可真是麻烦,一个14.4k 的modem,还要用报纸遮住不给
领导看到,电话有好几个人公用,他们要炒股票,他们要煲电话粥,
有时候我刚拨号还在“喵喵喵”就有人提抗议,又要关了。
 
关于AlwaysShowExt我也看到了,但是不能确定而已.
遍历全部文件的方法我觉得还是不好,我的一些目录下面有上千个文件!

>>电话有好几个人公用,他们要炒股票
你可以介绍他们到我们的站点看看,<a href="http://www.wenhua.com.cn">文华财经</a>,是股票站点. :-)
 
Pipi.真可怜。
Pipi.兄,你也是个小领导吧????
 
还有一个可用的方案

ListView_FindItem 用到的 LV_FINDINFO 如果是使用 LVFI_PARTIAL 参数
那么是部分查找,折中的方案:
全部使用部分查找功能,就是说,不管它显不显示扩展名,我都
只查找文件名(无扩展名)部分,找到后就取出全路径名比较,不是的话
再部分查找下一个(因为有可能以后的系统不是按文件排序,所以
不getnext),再比较。

我看了一下,其实open file dialog在打开时就增加所有的文件图标
进去,时间都花在那里了,其实此后的查找都在cache中,比较快了。
 
是个方法..

看来解决的办法还是挺多的啊!

如果你有兴趣,碰巧也有时间,不妨看看 怎样判断listview当前显示的的每列
是几行, 这样我 div 5 的时候心里比较有底.
 
好消息:

找到 index 后

windows.SetFocus(h); //要把输入焦点放在listview上
ListView_EditLabel(h,index); //在第index个条目进入编辑修改状态
ListView_EditLabel(h,-1); //退出编辑修改状态

不仅可以翻屏,还可以选择了它(selection),
连ListView_SetItemState也不用了,也不用考虑它是第几列
 
后退
顶部