起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 1014|回复: 1

[分享]如何控制系统主界面中终止任务按钮的状态

[复制链接]
发表于 2008-8-4 11:12:00 | 显示全部楼层 |阅读模式
关键字:流程 终止流程 终止任务 主界面

描述:
此例主要实现,根据“执行规则\能否终止”属性控制系统主界面上的“终止”按钮的Enable属性。即:当“能否终止”属性为False 时,主界面的“终止”按钮不可用;当“能否终止”属性为True 时,主界面的“终止”按钮为可用

适用版本:
    x3 3068

实现步骤:

1、在 业务模型\系统空间\简洁风格\界面库\窗体库\标准风格主窗体
procedure TSTANDARDSTYLEMAINFORM.actFlowAbortTask11Update(Sender: TObject);
var
  b: Boolean;
begin
  b := True;
  try
    b := ObjectHelper.ToBoolean(ObjectHelper.CallMethod(CurrentFunc.MainForm, 'CanFlowAbortTask', []));
  except
  end;
  actFlowAbortTask.Enabled := (CurrentFlowControl <> nil) and
    (CurrentFlowControl.CanAbortTask) and b;
end;

2、标准风格主窗体 ActionListStandard控件 OnUpdate事件上加上actFlowAbortTask11Update方法


3、在流程的功能环节上放FolwBroker控件
定义方法:
function TMainForm.CanFlowAbortTask: Boolean;
begin
  Result := TExecuteRule(TProcActivity(FlowBroker1.FlowControl.CurrentProcUnit).ExecuteRules.Items[0]).CanAbort;
end;
回复

使用道具 举报

 楼主| 发表于 2008-8-4 11:54:20 | 显示全部楼层
知识点:
1、通过例子我们了解到 标准风格主窗体 有ApplicationEvents控件,所以通过它可以实现对某一个功能来更改 可以响应 标准风格主窗体 的动作。
2、TExecuteRule(TProcActivity(FlowBroker1.FlowControl.CurrentProcUnit).ExecuteRules.Items[0])
这里可以得到执行规则0的相关规则
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-22 19:23 , Processed in 0.038777 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表