6
A
回答
10
可以插入下面的代码到窗体的公告称,形式已经打开init
方法。 如果您有任何问题的代码不要犹豫,问!
public void init()
{
#define.CACHE_OWNER ('MyForm')
#define.CACHE_KEY_INSTANCE ('Instance')
FormRun existingForm()
{
;
if (infolog.globalCache().isSet(#CACHE_OWNER, #CACHE_KEY_INSTANCE))
{
return infolog.globalCache().get(
#CACHE_OWNER, #CACHE_KEY_INSTANCE);
}
return null;
}
void registerThisForm()
{
;
infolog.globalCache().set(#CACHE_OWNER, #CACHE_KEY_INSTANCE, this);
}
boolean isAlreadyOpened()
{
;
return existingForm() ? !existingForm().closed() : false;
}
void activateExistingForm()
{
;
existingForm().activate(true);
}
;
super();
if (isAlreadyOpened())
{
activateExistingForm();
this.close();
}
else
{
registerThisForm();
}
}
0
下面的代码添加到形式的init
方法如下。不需要其他更改。
public void init()
{
#define.CACHE_OWNER('MyForm')
int hWnd;
super();
if (infolog.globalCache().isSet(#CACHE_OWNER, curUserId()))
{
hWnd = infolog.globalCache().get(#CACHE_OWNER, curUserId());
}
if (WinApi::isWindow(hWnd))
{
element.closeCancel();
WinAPI::bringWindowToTop(hWnd);
}
else
{
infolog.globalCache().set(#CACHE_OWNER, curUserId(), element.hWnd());
}
}
相关问题
- 1. Dynamics AX 2012的setVisible()有点像
- 2. Dynamics AX 2012安装错误
- 3. Dynamics AX 2012 InventJournalTrans表字段
- 4. Dynamics AX 2012表格来源
- 5. Dynamics ax 4.0,打开窗体而不在当前记录上应用过滤器
- 6. Dynamics AX的2012外键约束
- 7. Dynamics AX的2012财务维度
- 8. Dynamics AX 2012 - 在BOM中的位置
- 9. Dynamics AX上的XGantt ActiveX问题(2012)
- 10. Dynamics AX的2012:翻译RecId成价值
- 11. 带有多个AOS的死锁(Dynamics AX 2012 R2)
- 12. AX 2012窗体控制和计算
- 13. Ax 2012在窗体上禁用行
- 14. Dynamics AX 2012 RegConfig不起作用
- 15. Dynamics AX 2012 C#编译警告
- 16. 嵌入MS Dynamics AX 2012现场控制
- 17. Dynamics AX 2012受限系统管理员
- 18. Dynamics AX 2012-AIF使用C#访问
- 19. Dynamics AX 2012不释放内存
- 20. Dynamics AX 2012 SSRS报告多值参数
- 21. Dynamics AX 2012:动态创建类
- 22. Dynamics AX 2012 AOT对象查找
- 23. SalesOrder - MS Dynamics AX 2012 - AIF - 字段说明
- 24. Dynamics AX 2012部署到ep未找到
- 25. Microsoft Dynamics AX 2009开发
- 26. Ax2012窗体只能打开一次
- 27. 打开Windows窗体只在C#一旦
- 28. Dynamics AX的FTP
- 29. 如何从另一个窗体打开窗体中的窗体
- 30. 获取对系统Dynamics AX的所有地址2012
这很好用。我确实必须将activate方法更改为element.existingForm()。setActive(); activate()命令没有将原始表单放在前面。非常感谢! – Brad