乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 78|回复: 6

一点新手的帮助

[复制链接]

15

主题

209

帖子

121

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2006-10-30 12:51:03 | 显示全部楼层 |阅读模式
好的,我已经用VBA玩了大约一个星期,只是写了一些小东西,看看我能做什么和不能做什么。我从帮助文件中得到了这个小片段,并根据需要对其进行了修改
  1. Public Sub GetFolderList(BlockLibrary As String)
  2. Dim FileName As String
  3. Dim FileList() As Variant
  4. Dim Counter As Single
  5. ' Display the names of the files that represent directories.
  6. FileName = Dir(BlockLibrary, vbDirectory)    ' Retrieve the first entry.
  7. Counter = 0
  8. ReDim FileList(Counter)
  9. Do While FileName  ""    ' Start the loop.
  10.     ' Ignore the current directory and the encompassing directory.
  11.     If FileName  "." And FileName  ".." Then
  12.         ' Use bitwise comparison to make sure FileName is a directory.
  13.         If (GetAttr(BlockLibrary & FileName) And vbDirectory) = vbDirectory Then
  14.             Debug.Print FileName    ' Display entry only if it
  15.             FileList(Counter) = FileName
  16.             ReDim Preserve FileList(Counter + 1)
  17.             Counter = (1 + Counter)
  18.         End If    ' it represents a directory.
  19.     End If
  20.     FileName = Dir    ' Get next entry.
  21. Loop
  22. End Sub

然而,我有一个问题
它看起来正常吗
我可以在函数中使用此子函数填充列表框吗
此外,我还尝试了几种方法来获取此代码,并将扩展名传递给它,以获得该文件类型的列表
谢谢

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

15

主题

209

帖子

121

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2006-10-30 13:28:06 | 显示全部楼层
嘿,Vicious D. Timothy Slither:
我使用了以下代码。
  1. Option Explicit
  2. Public DirectoryListArray() As String
  3. Public Sub Main()
  4.     Dim MyFile As String
  5.     Dim Counter As Long
  6.    
  7.     ReDim DirectoryListArray(1000)
  8.    
  9.     MyFile = Dir$("c:\temp\*.dwg")
  10.     Do While MyFile  ""
  11.         DirectoryListArray(Counter) = MyFile
  12.         MyFile = Dir$
  13.         Counter = Counter + 1
  14.     Loop
  15.    
  16.     ReDim Preserve DirectoryListArray(Counter - 1)
  17. End Sub

然后使用以下命令加载列表框。
  1. ListBox1.List = DirectoryListArray

回复

使用道具 举报

15

主题

209

帖子

121

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2006-10-31 12:12:32 | 显示全部楼层
感谢Matt(又名Trick Magnet M.Flava)
代码示例帮助我从LISP过渡到VB(a)
,我一直在编写小模块triing,以完成LISP中简单的小事情
新问题。我应该在创建新子模块时添加模块,还是只添加一个大模块<再次感谢
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-10-31 12:20:29 | 显示全部楼层
不客气
我看到它有3种不同的方式:
1)将所有子模块集中到一个模块中(我不太在意)
2)为每个子模块分别设置模块(也不在乎)
3)将子模块分组到不同的模块中(这就是我试图做的)。例如,注册表代码的所有子模块将位于一个模块中;用于文件操作的所有子模块将位于另一个模块中;等等<我想有一种“推荐”的方法。这是什么,我不知道。我喜欢选项#3,我会坚持下去,因为它一直在为我工作。
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-10-31 12:30:37 | 显示全部楼层
我已经开始做选项3了。所有的层功能在一个,所有的文件夹功能在另一个,等等,它似乎工作得很干净。
我一直用这种方式写我的lisp。都在一个文件里,但是我把文件分成几个部分。
看起来更干净。谢谢
回复

使用道具 举报

15

主题

209

帖子

121

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2006-10-31 13:05:56 | 显示全部楼层
在决定将代码放在何处(就模块而言)时要记住的一件事是其中包含的变量/函数的范围。 您需要知道模块何时“加载”和“卸载”,以便弄清楚模块中包含的全局变量何时“消失”。 当你谈论模块时,它并没有那么大的区别。 但是当你谈论课程时,它确实如此。
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-10-31 13:08:20 | 显示全部楼层
我也使用选项3。 我为图层,文本,标题块等制作单独的dvb文件,然后为不同的子模块使用模块,最后将类似的子组在1个模块中。 我希望这是有道理的
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 20:31 , Processed in 0.309867 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表