求助 请教2问题--每个问题50分--

3q2008Com 2005-10-08 05:17:40
1 . 怎么实现Winrar 里面显示文件图标的效果

你用WINRAR查看系统图标 她会显示系统默认的图标,我想做个ListView 实现该功能.

2. 求教高手指点一下,小弟迷惑中
比如我用select * from table 里面有100W条记录,我的记录集调用他 在本地, 库在服务器,他的运行方式是, 我请求... 数据库查出 100W条记录(值到查询完) 传回我本地...
请求指点一些怎么能让查询时客户端响应的快些 , 我知道不用* 用指定字段, 还有其他办法吗?我的库时ACCESS的 大约有 15个人在用 (ACCESS版本 无法使用SqlServer), 请问有什么好的办法可以提高数据查询响应的速度.


...全文
170 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
3q2008Com 2005-10-11
  • 打赏
  • 举报
回复
类似ASP里面的分页吗?
CatchWind 2005-10-11
  • 打赏
  • 举报
回复
ACCESS可以使用ADO來進行分頁.

RecordSet 有個PageSize(每頁的記錄數)屬性, 再結合其PageCount(總頁數), AbsolutePage(指前顯示第幾頁)等屬性即可.

网上有很多例子的

CatchWind 2005-10-10
  • 打赏
  • 举报
回复
那給你個簡單的:
以下內容直接保存為Form1.frm即可
VERSION 5.00
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 3195
ClientLeft = 60
ClientTop = 345
ClientWidth = 4680
LinkTopic = "Form1"
ScaleHeight = 3195
ScaleWidth = 4680
StartUpPosition = 3 '系統預設值
Begin VB.TextBox Text1
Height = 435
Left = 1200
TabIndex = 3
Text = ".doc"
Top = 600
Width = 1815
End
Begin VB.PictureBox pic16
AutoSize = -1 'True
BorderStyle = 0 '沒有框線
Height = 240
Left = 360
ScaleHeight = 240
ScaleWidth = 240
TabIndex = 2
Top = 1200
Width = 240
End
Begin VB.PictureBox pic32
BorderStyle = 0 '沒有框線
Height = 480
Left = 1500
ScaleHeight = 32
ScaleMode = 3 '像素
ScaleWidth = 32
TabIndex = 1
Top = 1320
Width = 480
End
Begin VB.CommandButton Command1
Caption = "Command1"
Height = 495
Left = 1920
TabIndex = 0
Top = 2160
Width = 1335
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Declare Function SHGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" (ByVal pszPath As String, ByVal dwFileAttributes As Long, psfi As SHFILEINFO, ByVal cbFileInfo As Long, ByVal uFlags As Long) As Long
Private Declare Function DrawIconEx Lib "user32" (ByVal hdc As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Long

Private Type SHFILEINFO
hIcon As Long ' out: icon
iIcon As Long ' out: icon index
dwAttributes As Long ' out: SFGAO_ flags
szDisplayName As String * 256 ' out: display name (or path)
szTypeName As String * 80 ' out: type name
End Type

Private Const SHGFI_ICON = &H100 ' get icon
Private Const SHGFI_LARGEICON = &H0 'Large icon
Private Const SHGFI_SMALLICON = &H1 'Small icon

Private Const FILE_ATTRIBUTE_NORMAL = &H80
Private Const SHGFI_USEFILEATTRIBUTES = &H10 ' use passed dwFileAttribute

Private Const DI_NORMAL = &H3

Dim ShInfo As SHFILEINFO

Private Sub Command1_Click()
GetIcon Text1.Text
End Sub

Private Function GetIcon(FileName As String) As Long
Dim r As Long

Set pic32.Picture = LoadPicture("")
Set pic16.Picture = LoadPicture("")

'小圖標
r = SHGetFileInfo(FileName, FILE_ATTRIBUTE_NORMAL, ShInfo, Len(ShInfo), SHGFI_USEFILEATTRIBUTES Or SHGFI_ICON Or SHGFI_SMALLICON)
DrawIconEx pic16.hdc, 0, 0, ShInfo.hIcon, 16, 16, 0, 0, DI_NORMAL

'大圖標
r = SHGetFileInfo(FileName, FILE_ATTRIBUTE_NORMAL, ShInfo, Len(ShInfo), SHGFI_USEFILEATTRIBUTES Or SHGFI_ICON)
DrawIconEx pic32.hdc, 0, 0, ShInfo.hIcon, 32, 32, 0, 0, DI_NORMAL

Set pic32.Picture = pic32.Image
Set pic16.Picture = pic16.Image
End Function

Private Sub Form_Load()
pic32.AutoRedraw = True
pic16.AutoRedraw = True
End Sub
3q2008Com 2005-10-10
  • 打赏
  • 举报
回复
谢谢楼上仁兄 ACCESS可以处理分页吗?
winehero 2005-10-10
  • 打赏
  • 举报
回复
用存储过程处理分页,给你找一个Link:
http://61.186.252.131/Expert/topic/2261/2261109.xml?temp=.3991815
3q2008Com 2005-10-10
  • 打赏
  • 举报
回复
: winehero(编程人生)

这么多显然要分页,论坛里很多,写个分页选取的SP吧

是什么 请教 ..

------------------------

谢谢 CatchWind(追風少年)
winehero 2005-10-10
  • 打赏
  • 举报
回复
问题一:
无非就是使用SHGetFileInfo获取指定文件的图标句柄,打开PictureBOx的设备上下文ImageList_Draw
来画图标,然后就可使用PictureBox的Image添加到ImageList中以备使用
问题二:
这么多显然要分页,论坛里很多,写个分页选取的SP吧
zou19820704 2005-10-10
  • 打赏
  • 举报
回复
你们说的是不是把说有的数据取回来在自己客户端在分检自己需要的数据呢》?这样我听说是可以减轻服务器负担,呵呵,说的不对,希望大哥给指点指点哦
3q2008Com 2005-10-09
  • 打赏
  • 举报
回复
CatchWind(追風少年) 的列子

看的有点晕啊 ....
3q2008Com 2005-10-09
  • 打赏
  • 举报
回复
谢谢 各位 问题解决了就给分

谢谢 CatchWind(追風少年) 的列子
province_ 2005-10-08
  • 打赏
  • 举报
回复
1、LISTVIEW里面可以宣战不同的显示风格,其中之一就是显示图标的。
2、你没看到所有的论坛(包括这里)都是分页显示记录的吗?
CatchWind 2005-10-08
  • 打赏
  • 举报
回复
第一個問題, 這里有現成的源碼,可以參考
http://www.supercss.com/StaticData/Resource/Code/part_2/chinese/file/edeskvb2.zip
zyg0 2005-10-08
  • 打赏
  • 举报
回复
我只会2
acess数据库 再 select from 表 后会把整个表到本地然后再本地执行where 之后
sql是在服务器 把条件筛选后再传到本地本地
qiangsheng 2005-10-08
  • 打赏
  • 举报
回复
1、可能要到注册表里面取得文件类型对应的图标了。

2、一次少取点,分页嘛。

7,765

社区成员

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

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