明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5288|回复: 22

错误: 参数太多

  [复制链接]
发表于 2003-5-22 17:30:00 | 显示全部楼层 |阅读模式
各位大虾:
  提示:
  错误: 参数太多
请问是何错误,何处着手改正?
发表于 2003-5-22 19:54:00 | 显示全部楼层

也就是参数太多,少一两个试试

 楼主| 发表于 2003-5-23 10:58:00 | 显示全部楼层

标注出问题??向您请教

我在给一串矩形做标注时,由于 矩形、标住(标注矩形的宽、间距)不在一层上,矩形以array的形式画出,(command "layer" (entlast) "" 2 p m n "").标注要位于矩形串的中间,程序运行时标注和实际的点不能对应,n为列间距,往往差一个间距或矩形的宽,点的算法没错,我自己发觉用array时行间距赋值为2,实际画出的经测量为1,
我若改为(+ n 1),在n大于1时正确,n小于1,则不能。为请问是何原因,可有何改正的方法?或有何更好的方法?
发表于 2003-5-23 11:57:00 | 显示全部楼层

你不把你的程序贴出来怎么看你错在哪?

 楼主| 发表于 2003-5-25 22:01:00 | 显示全部楼层

请教

首先多谢您的回复。
我又仔细查看了程序,发现array的列间距我理解错误,我认为两个矩形的间距即是array的列间距,经测量,发现我错了。我加上矩形的宽再作为array中的列间距则正确。谢谢您的=关心。

    我还想请教如何给对话框添加错误提示的功能,即:如果参数输入超过允许范围,能给出提示,然后再回到对话框的界面,继续填写?可否给出一个小范例。盼复。
发表于 2003-5-26 13:32:00 | 显示全部楼层

例子

(defun c:test(/ dcl_id what_next a)
  (setq dcl_id (load_dialog "e:\\lisp\\tmp.dcl"))
  (setq what_next 2)
  (while (>= what_next 2)
    (if (not (new_dialog "abc" dcl_id))
      (exit)
    )
    (action_tile "accept" (strcat "(setq a (atof (get_tile \"edit1\")))"
                                  "(if (or (> a 99) (< a 0))"
                                  "(progn (alert \"错误\") (done_dialog 4)) (done_dialog 1))"))
    (setq what_next (start_dialog))
  )
  (unload_dialog dcl_id)
  (princ)
)

********.dcl**********
abc:dialog{
        :edit_box {
                label="输入数字(0~99):";
                key="edit1";
        }
        ok_cancel;
}
 楼主| 发表于 2003-5-27 16:03:00 | 显示全部楼层

感谢你的回复

感谢你的回复
你好。
  我照您的例子做出来的错误提示很好。我想运用到我的程序中,但有问题。
  1、我的对话框的要输入的数据比较多,要一个个做出错检查,我编了:
abcd :dialog
    {
    label  ="Acad信息";
     errtile;
     ok_only;
    }       

*******主程序要调用的出错子LSP程序*******
         (defun  qqq ()
                (setq dcl_file "abcd")
                (setq dcl_flag  (load_dialog dcl_file))                   
                (if(<  dcl_flag  0)    (exit))               
                (set_tile  "abcd" "长度必须大于0")
                (action_tile  "accept" "(done_dialog)")
                (start_dialog)
                (unload_dialog  dcl_flag)
                 (princ))


   子程序中(if  (< a 0)
                (abcd)
           )
  运行命令后,不出现错误,也不运行程序,我的对话框也不出现,请问如何解决,可以检测多个错误,每个都有出错提示。
2、我用array命令画矩形阵列,对话框想有一个可输入插入点的子控件,可光标拾取点,
但系统提示:
    错误 在“array”中。(widget 类型 = ** undefined **, key = “”)
    此类型的控件无法拥有子控件。
   可以解决吗?
盼复
发表于 2003-5-27 17:25:00 | 显示全部楼层

re:

不是很清楚你的程序,(action_tile  "accept" "(done_dialog)"),这样你的确定按钮仅仅是推出对话框,并未做任何事,所以不会出错,也不会执行任何内容。

对话框中要一个输入插入点的控件怎么会不行?
你最好把你的程序和对话框代码都放上来,才能确定你的错误。
 楼主| 发表于 2003-5-28 09:38:00 | 显示全部楼层

您好


你好。
我把源文件帖上,加上上次的dcl程序,我想插上出错对话框,要能显示错误,提醒用户后能回到对话框。能有插入点子控件。应如何解决?

我做了一个自定义按纽,appload功能(宏定义为^C^Cinserts  appload ),可以直接执行,不需要下拉菜单。但我更想如何加载路径,使直接完成appload,选择文件,加载这三步功能,然后可以直接输入命令,或出现对话框?应如何去定义按纽?麻烦您了,先谢谢您。盼复。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2003-5-29 10:00:00 | 显示全部楼层

你能不能说明白些?很难懂你的意思。

你的程序有什么问题呢?
注意:PLINE最后和ARRAY最后的“”去掉。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 11:38 , Processed in 0.172941 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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