代码编辑器支持在光标的位置动态插入内容

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

代码编辑器支持在光标的位置动态插入内容

# 用户场景 代码编辑器之前不支持在指定的位置出入代码,只能全部替换,这样数据量比较大,用户只想更改某一片段,却要替换掉整个内容。代码编辑器需要支持后端通过指令在光标处插入内容,可以用于复杂代码或数据库表名的插入。 # 功能介绍 以查询分析器为例,选中from,点击注释,可以看到from左右两侧被插入了/**/ ![1.webp](/download/0100d6c43745de5a47c69c2170de6ac5ebb1.webp)![2.webp](/download/010029c83c86255148189613c5af3e973b2d.webp) # 适用版本 金蝶云苍穹BOS_V5.0.001及以上 # 插件示例 ```java package kd.bos.plugin.sample.dynamicform.pcform.control.bizcase; import java.util.EventObject; import kd.bos.dataentity.utils.StringUtils; import kd.bos.form.control.Button; import kd.bos.form.control.CodeEdit; import kd.bos.form.control.Control; import kd.bos.form.plugin.AbstractFormPlugin; public class CodeEditSample extends AbstractFormPlugin { private final static String KEY_CODEEDIT1 = "codeeditap1"; private final static String KEY_BTNOK = "btnok"; @Override public void registerListener(EventObject e) { super.registerListener(e); Button btnOK = this.getView().getControl(KEY_BTNOK); btnOK.addClickListener(this); } @Override public void afterBindData(EventObject e) { super.afterBindData(e); CodeEdit codeEdit = this.getView().getControl(KEY_CODEEDIT1); codeEdit.setText("<c>text</c>"); } @Override public void click(EventObject evt) { super.click(evt); Control source = (Control)evt.getSource(); if (StringUtils.equals(KEY_BTNOK, source.getKey())){ CodeEdit codeEdit = this.getView().getControl(KEY_CODEEDIT1); String text = codeEdit.getText(); if (StringUtils.isNotBlank(text)){ this.getView().returnDataToParent(text); this.getView().close(); } } } } ```

代码编辑器支持在光标的位置动态插入内容

# 用户场景代码编辑器之前不支持在指定的位置出入代码,只能全部替换,这样数据量比较大,用户只想更改某一片段,却要替换掉整个内容。...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息