繁体   English   中英

如何在Dialog中添加checkBox并获取值?

[英]How to add checkBox in Dialog and get value?

我想在对话框中添加一个CheckBox

我用过这段代码:

Dialog dialog;
DialogField dialogField;
NoYesId checkValue;
;
dialog = new Dialog("New dialog with checkBox");

dialogField = dialog.addFieldValue(identifierStr(NoYes) , checkValue);
checkValue= dialogField.value();
dialog.run();
info(strfmt("Value %1" , checkValue));

所以,在Debug中我看到变量(checkValue)的值始终为NO。

在网络教程中,我看到了这段代码:

dialog.addFieldValue(typeid(NoYes), NoYes::Yes, "tip");

但我有一个错误方法typeid不存在

这是什么方式? 谢谢大家,

请享用!

您只能在扩展数据类型(EDT)上使用typeId (AX 2009及typeId )或extendedTypeStr (AX 2012),而不能使用NoYes枚举。 它可以在NoYesIdNoYesId ,因为它是EDT。

dialog.addFieldValue(typeid(NoYesId), NoYes::Yes, "Check");

您必须先调用run才能有意义地获取值。

Dialog dialog = new Dialog("New dialog with checkBox");
NoYesId checkValue = NoYes::No;
DialogField dialogField = dialog.addFieldValue(extendedTypeStr(NoYesId), checkValue, "Check it");
if (dialog.run())
{
    checkValue = dialogField.value();
    info(strfmt("Value %1" , checkValue));
}

如果枚举不存在扩展数据类型,则可以使用enumStr() ,例如:

dialogField = dialog.addFieldValue(enumStr(NoYes), checkValue);

identifierStr而不是extendedTypeStr为我工作(Ax 2012)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM