明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2268|回复: 7

[VBA]急!!!字符串读取的问题

[复制链接]
发表于 2004-5-12 17:16:00 | 显示全部楼层 |阅读模式
各位大侠好,小弟刚学VBA,我想在CAD中随机输入任意一个字符串,如何在其它程序(用什么语言都可以)中读取出我输入的那个特定的字符串?用什么来标识它呢?如何找到它的内容呢?正在考虑之中,能否给些提示或者例子?
发表于 2004-5-12 19:09:00 | 显示全部楼层
先构建一个选择集合遍历你的选择集合判断是否是你需要的即可
发表于 2004-5-12 19:23:00 | 显示全部楼层
在ACAD中,字符串保存的就是文字对象,只要能够对ACAD操作,就可以返回这个对象,取得它的内容。
 楼主| 发表于 2004-5-15 20:57:00 | 显示全部楼层
我的想法是这样的,在DWG文件中通过一个函数使得DWG中保留我们所定义的几个变量v1,v2,v3,其内容分别存储三个字符串,文件关闭之后,在其它地方用其它的程序取出其内的三个变量的值。现在就是还不知道怎么样保存变量和读取变量。
发表于 2004-5-15 21:04:00 | 显示全部楼层
可以存到注册表或文件里
发表于 2004-5-18 23:51:00 | 显示全部楼层
用词典对象也行!
 楼主| 发表于 2004-5-21 12:38:00 | 显示全部楼层
一、ThisDrawing.SetVariable "users1", "明经通道"


二、AcadApp.ActiveDocument.SetVariable "DIMASZ", 2.5


这两个都不是很灵活,第一个方式文件关闭后变量就不保存了,第二种方式是系统变量,变量名必须是系统提供的,并且好像不能保存任意的字符串,难道一定要借用外界文件来保存吗?
发表于 2004-5-21 16:23:00 | 显示全部楼层
使用扩展数据,扩展词典中的扩展记录也行啊。
  1. Sub Test()
  2.        SetXData
  3.        GetXData
  4. End Sub
  5. Sub SetXData()
  6.        Dim xdt(0 To 1) As Integer
  7.        Dim xdv(0 To 1) As Variant
  8.        xdt(0) = 1001: xdv(0) = "扩展数据"
  9.        xdt(1) = 1000: xdv(1) = "明经通道"
  10.        ThisDrawing.ModelSpace.SetXData xdt, xdv
  11. End Sub
  12. Sub GetXData()
  13.        Dim xdt As Variant
  14.        Dim xdv As Variant
  15.        ThisDrawing.ModelSpace.GetXData "扩展数据", xdt, xdv
  16.        If IsEmpty(xdt) Then Exit Sub
  17.        MsgBox xdv(1)
  18. End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-2-23 11:28 , Processed in 0.173636 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表