下表总结了参数可以指定的控制位。要一次设置多个条件,请将这些值相加以创建介于 0 和 127 之间的值。如果 ifis 设置为零,则任何控制条件都不适用于下一个用户输入函数调用。valvalval 注意:AutoCAD 或 ObjectARX 的未来版本可能会定义附加控制位,因此应避免设置表中未显示或本节中未描述的任何位。acedInitGet()
以下程序摘录显示了如何设置对函数的调用。acedInitGet()acedGetInt() int age; acedInitGet(RSG_NONULL | RSG_NOZERO | RSG_NONEG, NULL); acedGetInt("How old are you? ", &age); 此序列询问用户的年龄。AutoCAD 会自动显示一条错误消息,并在用户尝试输入负值或零值、仅按 Enter 或输入关键字时重复提示。(AutoCAD 本身会拒绝输入非整数值的尝试。 该选项允许下一个用户输入函数调用接受任意输入。Ifis 设置和用户输入无法识别的值,函数返回,并且可以通过调用 to 检索输入。由于与 Enter 一样会分隔最终用户输入,因此任意输入永远不会包含空格。该选项在上表中列出的所有选项中优先级最低;例如,如果调用不允许负数,AutoCAD 仍会拒绝这些负数。RSG_OTHERRSG_OTHERacedGetxxx()RTKWORDacedGetInput()RSG_OTHERacedInitGet()RSG_NONEG 以下代码允许任意输入(错误检查最小)。 int age, rc; char userstring[511]; acedInitGet(RSG_NONULL | RSG_NOZERO | RSG_NONEG | RSG_OTHER, "Mine Yours"); if ((rc = acedGetInt("How old are you? ", &age)) == RTKWORD) // Keyword or arbitrary input acedGetInput(userstring); } 在此示例中,根据用户的输入返回下表中显示的值。acedGetInt()
注意:该函数通过返回代替来指示任意输入(如果这已被先前调用启用)。acedDragGen()acedInitGet()RTSTRRTKWORD
|
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:25
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.