我有一个对话框(DCL)处于活动状态,其中列出了块名。当用户选择它们时,我希望用户选择的所有块(通过名称)都高亮显示。
第一次,动作块在代码中运行,第一个块选择集高亮显示。块中的所有后续更改都无法高亮显示,除非我遍历代码或选择其他程序,然后返回autocad。就好像dcl并没有放弃windows重画的autocad应用程序。
这是突出显示功能。vlisp有这个问题吗?有趣的是,我称之为“喜悦”函数,而物体实际上并不突出。。。。只是没有突出显示下一个区块组。
- (defun highlight (ss / sscount)
- (if ss (progn
- (setq sscount -1)
- (while (< (setq sscount (1+ sscount)) (sslength ss))
- (redraw (ssname ss sscount) 3)
- );while
- );progn
- (graphscr)
- );if
- );defun
-
-
- (defun delight (ss / sscount)
- (if ss (progn
- (setq sscount -1)
- (while (< (setq sscount (1+ sscount)) (sslength ss))
- (redraw (ssname ss sscount) 4)
- );while
- );progn
- );if
- );defun
|