有没有办法在标准代码中跳转所有对话框?
例如,如果在TaxVatTable.validateWrite
中调用了一个班级TaxVATNumValidateES\validateVATNum
并且此处存在一个BOX并且我不想显示,是否有解决方案?
在所有情况下都存在禁用对话框功能的方法吗?
答案 0 :(得分:2)
是的,你可以,只需修改\Classes\Box
中的相关方法。
问题是那些Box
消息是由用户做出的决定点。那么你怎么知道他们总会选择什么呢?在大多数情况下,您可以返回_defaultButton
并且可能是O-K。
他们调用不同类型的表单,但你所指的是\System Documentation\Classes\DialogBox
,它是内核代码,所以你可以覆盖它的最低点是Box
类。
你可以通过这样做看出它们是如何短路的:
if (clientKind() == ClientType::COMObject)
return _defaultButton;
修改强>
我想补充一点,我不建议这样做。只需更改调用位置的代码即可。你将在功能上打破框架的一部分。其他开发人员可能需要在某个时候调用此功能。
它用于表格和所有地方。如果你只是让它总是返回Yes
,你可能会导致各种各样的问题。