vb6中怎么让filelistbox控件中只显示只读、隐藏、系统文件

qpmgljf 2010-01-01 04:57:04
有四个checkbox 名称分别为所有文件、只读、隐藏、系统
不选所有文件而只选择只读、隐藏、系统时,怎么让filelistbox控件中只显示只读、隐藏、系统文件?先谢谢啦~~~

另外捎带一个问题,如何用VB判断出可移动磁盘的盘符?
...全文
453 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
主界面的淡进淡出 因为我这代码将会完全公开 当教材的

所以主面我用另个 API (AlphaBlend)

我常用来半透明溶合图片应该不会有问题的,

Sub ShowTransparency(cSrc As PictureBox, cDest As PictureBox, ByVal nLevel As Byte)
On Error Resume Next
Dim LrProps As rBlendProps
Dim LnBlendPtr As Long
cDest.Cls
LrProps.tBlendAmount = nLevel
CopyMemory LnBlendPtr, LrProps, 4
With cSrc
AlphaBlend cDest.hDC, 0, 0, .ScaleWidth, .ScaleHeight, .hDC, 0, 0, .ScaleWidth, .ScaleHeight, LnBlendPtr
End With
cDest.Refresh
End Sub
舉杯邀明月 2010-01-01
  • 打赏
  • 举报
回复
我的意思就是在 End 之前,让系统把桌面(整个屏幕)刷新一下。

好象有个什么 API ,发个消息什么的。记不清楚了 ,也许你知道这个。

应该不是淡入淡出的问题。我也偶尔搞淡入淡出的窗口,从来没遇到过花屏现象。
你那个大窗口淡入淡出没有任何异常,仅仅那个主界面窗口,在我这儿淡入淡出的时候有点问题。
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
桌面进行一次强制刷新 ?? 不理解 ?

我画面淡出后只做了

Call CleanAll 关闭所有的Form, set nothing所有的 再END

你看到的几个涵数都在Module里面(Public Sub)

Picture2装载文字, 并以画面的上上半部份为Picture3 当Pictuire2的容器

非常感谢你的指教, 还有我好几个朋友都试了, 很奇怪, 他们都很正常啊, 不解...
舉杯邀明月 2010-01-01
  • 打赏
  • 举报
回复
也没看出不妥的地方。

我明天到办公室用别的电脑试试效果。


我给个建议:
  在程序最终结束前,让桌面进行一次强制刷新。


不知大师觉得这个主意如何。


cbm6666 2010-01-01
  • 打赏
  • 举报
回复
谢谢

1.置顶 我全部都会有地方让使用者最小化的, 呵...到最后再加...

2.下面这代码是最后一个代码

Tmer1 是淡进与淡出 Timer2是一个PictureBOX上面有那些白字

Private Sub Form_Load()
On Error Resume Next
Me.BorderStyle = 0: Me.Caption = ""
Me.Move LearnMain.Left, LearnMain.Top
SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3 '设定总在最前
'***********************************************************************
TransColor = vbBlue
Me.BackColor = TransColor
NowLevel = 0: Fadeio = 1
Call TransParent(Me.hwnd, TransColor, NowLevel)
Timer1.Interval = 100: Timer1.Enabled = True
'*********************************************
Me.Caption = "感谢您的大力支持"
Picture1.AutoRedraw = True
Timer2.Interval = 10
End Sub

Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Call CleanAll
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
If Button <> 0 Then DragKj (Me.hwnd)
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
If Button <> 0 Then DragKj (Me.hwnd)
End Sub

Private Sub Timer1_Timer()
On Error Resume Next
If NowLevel >= 0 And NowLevel <= 255 Then Call TransParent(Me.hwnd, TransColor, NowLevel)
If Fadeio = 1 Then
NowLevel = NowLevel + LVstep
If NowLevel >= 255 Then
NowLevel = 255
Timer1.Enabled = False
Call TransParent(Me.hwnd, TransColor, NowLevel)
Picture2.Move Picture2.Left, Picture3.Height
Timer2.Enabled = True
End If
Else
NowLevel = NowLevel - LVstep
If NowLevel <= 0 Then Timer1.Enabled = False: Unload Me
End If
End Sub

Private Sub Timer2_Timer()
On Error Resume Next
Picture2.Top = Picture2.Top - 40
If Picture2.Top <= 300 Then
Timer2.Enabled = False: Picture2.Top = 300
LearnMain.WindowState = 1
Call DelayCycle(1500)
PlayVoice (VoiceDisk & "再见.wav")
Fadeio = 2
Timer1.Enabled = True
End If
End Sub
舉杯邀明月 2010-01-01
  • 打赏
  • 举报
回复
  对于我说的第①的现象,我无法确认是什么原因。按理说不应该有‘不兼容’的问题。毕竟你的程序应该没用用直写屏幕的方法。用 Windows 的 GDI 方式来输出,几乎没有不兼容的情况。

  文件应该是不会少,否则不能运行吧。

  你能不能描述一下,你的最后的那屏白色文字是怎样的显示效果呢?

  要不,我用屏幕录像软件录个视频,你下载来看看我这里运行是怎样的情况?


  还有,我建议你的软件窗口不要强行置顶。毕竟窗口比较大,一运行你的软件,就会影响别的操作。
至少,你可以让别人选择是否置顶吧!
(这里仅是我的观点,你可以无视:①窗口置顶问题。②不喜欢关闭软件时,无条件询问“是否退出”。)
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
Chen8013 我晕了....

现在 我QQ上找了3人 下载运行 都很正常 是否有可能是你显卡兼容的问题 ?
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
我除了用API 没用其它任何控件 只有添加了 HvScrollbar 不会是注册的问题.

连鼠标滚轮的hook 我都先拿掉了, 呵呵 系统应该很"绿色"的 , 哎 再慢慢找问题了

总之 感谢你了, 有错误的纠正才有进步.
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
谢谢 Chen8013

1.因为数百兆文件,而且大半代码还没整理 所以我将所有的文件夹代码与相关文件拿掉后, 压缩成.rar便於上传, 是否在你那边少了啥? 我得检查看看. (可我自己下载下来的也没问题, 晕死....)

2.会有雪花? 不知其他人会不会 我这边很顺畅, 有两层一个flash另个Picturebox 我都先拿掉了, 因懒得注册并带上flash10c.ocx 也不该会是这问题

3.淡进淡出我用的就是SetLayeredWindowAttributes与AlphaBlend这两个API我经常在用,还没见过出问题的, 是否什么地方不兼容 ?? 搞不懂 ?

4.托盘那个图标不会马上消失 呵呵...是的, 那问题我知道还没时间去研究.
舉杯邀明月 2010-01-01
  • 打赏
  • 举报
回复
To CBM666 :

  你的程序在我的计算机上运行,我发现了3个 BUG 。

  不知道是否仅在我这里才会出现这些现象:
①退出后,屏幕花屏。似乎启动程序后,直接关闭 与点击‘综合属性’后再关闭,花屏的状态不相同。
 启动后直接退出,是把一些区域搞成了‘白屏’。
②最后的‘再见’画面,我想效果应该是从中间出现文字,向上滚动显示吧。
 在我这里是“在中间部分出现一行(约5象素高)闪烁的白色点,稍等一下文字全部显示出来”。
③程序退出后,系统托盘中 鼠标特效 的图标没有清除。
 这时把鼠标移过去,托盘中那个图标才会消失。

这里有一个屏幕截图。 【点这里查看原始大图


SYSSZ 2010-01-01
  • 打赏
  • 举报
回复
做的好.
cbm6666 2010-01-01
  • 打赏
  • 举报
回复
在FileListBox属性框里有四项文件属性屏蔽与否的 True False 设置



将於三月中发行之 CBM666 编程示例教材
http://cbm666.com/ppmouse.rar

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧