天青色 发表于 2014-11-4 20:45:07

请问能实现下拉列表部分内容可看不可选吗?

本帖最后由 天青色 于 2014-11-4 21:00 编辑

如一个DCL中下拉列表:
expo:dialog
{
:popup_list
{
    key = "expo" ;
    list = "零\n壹\n贰\n叁\n肆\n伍\n陆\n柒\n捌\n玖\n拾" ;
    value = "0" ;
}

ok_cancel;
}

能看到列表中全部值:"零\n壹\n贰\n叁\n肆\n伍\n陆\n柒\n捌\n玖\n拾"
但是用户只能选择一部分,如:"肆\n伍\n陆"
用于有前期限定条件时,用户只能选列表值的相应一部分,但能看到全部列表值。



zhaochang71 发表于 2014-11-4 21:56:02

DCL自己不行,但可以通过自己编程实现,当选择项为你不想让选择的项时,发出提示不可选的提示。

天青色 发表于 2014-11-4 22:43:29

嗯,谢谢,也是一个办法

llsheng_73 发表于 2014-11-5 02:25:07

本帖最后由 llsheng_73 于 2014-11-5 02:31 编辑

个人觉得最好是把不想让用户选定的项不列出来,但在说明文件中说明正常情况下所有可选项是些什么...
这样处理简单,试用也方便,不然试用的时候要老是点到你不让选的,不停弹出提示,大家都烦,你处理起来烦,人家试用的也烦...
expo:dialog
{
   :popup_list
   {
   key = "expo" ;
    }

   ok_cancel;
}

(start_dialog "expo" dcl)
(startL-list"expo")(mapcar'add_list(if 许可 '( "零""壹""贰""叁""肆""伍""陆""柒""捌""玖""拾" )'("壹""伍""陆")))(end_list)
....
这家样根据情况给出不同的下拉选项要简单得多,用起来也清楚明白

ZZXXQQ 发表于 2014-11-5 08:29:16

构造表:
(("零" "壹" "贰" "叁")("肆" "伍" "陆" "柒")("捌" "玖" "拾"))
根据用户的选择分别更改下拉表内容。

天青色 发表于 2014-11-11 20:32:14

谢谢大家,通过编程根据情况给出不同的下拉选项是个好办法

xyp1964 发表于 2014-11-13 21:03:18



页: [1]
查看完整版本: 请问能实现下拉列表部分内容可看不可选吗?