明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3635|回复: 5

[求助]如何在按下toolbar时获得自定义toolbar的名称

[复制链接]
发表于 2002-3-1 19:59 | 显示全部楼层 |阅读模式
我在程序中自定义了一些toolbar,每个toolbar调用的命令都是insert一个图块,但是按下不同的toolbar插入不同的图块,每个toolbar的name属性是不同的,我现在需要在按下不同的toolbar图标时取得该toolbar对应的名称.请问有什么方法?
发表于 2002-3-1 20:10 | 显示全部楼层

你可以做成带参数的函数,不同的按键使用不同的参数就行了

发表于 2002-3-4 10:04 | 显示全部楼层

是VC做的toolbar,还是用AutoCAD做的toolbar?

如果是VC,应该是得到该按钮的ID,如果是CAD中的TOOLBAR,你直接在菜单定义的该按钮后面写一句LISP语句不就行了吗,每个语句插入不同的块。
    我已经很久不使用呢LISP了,好像是(command "insert" "文件路径名" )
 楼主| 发表于 2002-3-5 10:35 | 显示全部楼层

如何使用带参数的函数完成呢,我的部分代码如下,可是我还是不能得到按钮的名称

'循环体中写下如下代码:
''先定义给个toolbar的宏命令
sHelp =rsBlock("Category1ID") & "/" & rsBlock("Category2ID") & "/" & rsBlock("dwgblock")
sTip =rsBlock("Category1Name") & "/" & rsBlock("Category2Name")ReDim Preserve sChildMacro(iLoop)
sChildMacro(iLoop) = Chr(3) + Chr(3) + "-insert" + sHelp + Chr(32)
''创建toolbar
........
''给每个toolbar加上命令
ReDim Preserve TbiChild(iLoop)
Set TbiChild(iLoop) = tlbChild(iLoopFather).AddToolbarButton(tlbChild(iLoopFather).Count + 1, sTip, sHelp, sChildMacro(iLoop))
''变量累加
iLoop = iLoop + 1
rsBlock.MoveNext


我所希望的效果是,不同的按钮可能对应同样的块,但是每个按钮都有不同
的名称rsBlock("Category1Name") & "/" & rsBlock("Category2Name"),如何将这个名称传递给每个按钮,使得我在按下按钮后,执行insert命令时可以确定是那个rsBlock("Category1Name") & "/" & rsBlock("Category2Name")
按钮执行的insert
 楼主| 发表于 2002-3-5 10:39 | 显示全部楼层

是用CAD的,但是按钮时动态生成的,对应的块也是动态的,lisp可以完成吗?下面是我

是用CAD的,但是按钮时动态生成的,对应的块也是动态的,lisp可以完成吗?下面是我的部分代码,请多指教![br]'循环体中写下如下代码:
''先定义给个toolbar的宏命令
sHelp =rsBlock("Category1ID") & "/" & rsBlock("Category2ID") & "/" & rsBlock("dwgblock")
sTip =rsBlock("Category1Name") & "/" & rsBlock("Category2Name")ReDim Preserve sChildMacro(iLoop)
sChildMacro(iLoop) = Chr(3) + Chr(3) + "-insert" + sHelp + Chr(32)
''创建toolbar
........
''给每个toolbar加上命令
ReDim Preserve TbiChild(iLoop)
Set TbiChild(iLoop) = tlbChild(iLoopFather).AddToolbarButton(tlbChild(iLoopFather).Count + 1, sTip, sHelp, sChildMacro(iLoop))
''变量累加
iLoop = iLoop + 1
rsBlock.MoveNext


我所希望的效果是,不同的按钮可能对应同样的块,但是每个按钮都有不同
的名称rsBlock("Category1Name") & "/" & rsBlock("Category2Name"),如何将这个名称传递给每个按钮,使得我在按下按钮后,执行insert命令时可以确定是那个rsBlock("Category1Name") & "/" & rsBlock("Category2Name")
按钮执行的insert
发表于 2002-3-8 19:18 | 显示全部楼层

由于你是动态生成toolbar,那就同时生成toolbar的执行宏吧

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

本版积分规则

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

GMT+8, 2024-5-18 20:25 , Processed in 0.192127 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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