我在PurchTable“Register”menuitem的clicked方法中有一些自定义代码,现在我需要在按钮功能执行后从代码运行Register命令。
我的问题是如何从代码中调用Register命令?
答案 0 :(得分:22)
我发现您实际上是在尝试执行clicked()方法,但如果您想通过代码执行菜单项,则可以执行以下操作:
new MenuFunction(menuItemDisplayStr(MyDisplayMenuItem), MenuItemType::Display).run();
当然,上面的代码可以更改为执行不同类型的菜单项,例如,下面的代码运行输出菜单项:
new MenuFunction(menuItemOutputStr(MyOutputMenuItem), MenuItemType::Output).run();
如果您在尝试执行的菜单项上需要任何参数,可以使用 Args 类传递它:
Args args = new Args();
args.record(myArgumentRecord);
args.caller(this);
new MenuFunction(menuItemOutputStr(MyOutputMenuItem), MenuItemType::Output).run(args);
答案 1 :(得分:4)
将AutoDeclaration
按钮的Register
设置为是。
然后直接拨打clicked
:
register.clicked();
不建议在表单方法中使用大量代码。
三层架构的基本概念是形式应该是 仅用于表示层,因此没有其他代码,如 表格上应该有业务逻辑。表格也放在表格上 降低了它们的可重用性和进一步定制的便利性;例如 如果要开发企业门户,则在表单上编写代码 将不得不在类或表方法等中再次写入 将使实施变得复杂。