如何通过代码修改字段的标题原创
金蝶云社区-wbshcy
wbshcy
2人赞赏了该文章 887次浏览 未经作者许可,禁止转载编辑于2022年12月21日 16:17:50

关键字:字段标题

一、需求

如何通过代码修改表单某个字段的标题,并且该字段的值被修改过,在退出单据时的提示也是显示字段的新标题,而不是原标题。


二、思路与方案

字段控件编程模型提供了setCaption方法可以修改字段的标题,但是该字段改动值后,点击退出按钮会提示该字段有修改是否继续退回,提示里还是字段的原标题,需要代码调试该提示发现这里的标题是去实体元数据字段的标题,所以还需要将实体元数据的标题也一起修改。

三、实现过程

在打开单据的afterBindData事件获取到字段的控件编程模型进行处理,并且拿到单据实体模型的字段修改其显示名称。

   @Override
   public void afterBindData(EventObject e) {
                super.afterBindData(e);
                //修改字段的标题
		TextEdit textField = (TextEdit)this.getView().getControl("kded_textfield1");
		textField.setCaption(new LocaleString("sss"));
		//对应修改元数据对应属性的标题
		Map<String, IDataEntityProperty> allFields = this.getModel().getDataEntityType().getAllFields();
		IDataEntityProperty kded_textfield1 = allFields.get("kded_textfield1");
		kded_textfield1.getDisplayName().setLocaleValue("sss");
	}


四、效果图

代码修改前字段的标题是文本1

image.png

通过代码修改字段标题为sss,操作确认里也是提示sss字段有修改

image.png


五、开发环境版本

V4.0.0.6

、参考资料

【开发平台】指导手册

学习成长中心


赞 2