起步软件技术论坛-X3

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

[搞定]通关于新闻中心刷新,我用消息来做出现的问题?**

[复制链接]
发表于 2008-2-18 08:27:31 | 显示全部楼层 |阅读模式
我在新闻公告消信息的-业务任务数据表的AfterApplyUpdates 发送了一个消息,而在新闻公告默认文档中处理这个消息使得 Timer.enable:=true 让Timer刷新。 现在由于新闻中心在保存后才弹出“向有关人员发送阅读信息”。应该是在发送阅读消息后,才使得 Timer.enable:=true  。我如何,能在发送阅读消息后,再发送使得Timer.enable:=true 的消息?

--------------------------------------新闻公告导航
procedure TGRIDNAV.FormDocCreate(Sender: TObject);
var
lmh: TMyTimerEnableMessageHandler;
begin
  TaskDataSet.DataFetch.PageRecords := 20;
  DataGrid.BorderStyle := TBorderStyle.bsNone;
  Timer.Enabled := True;
  {
  zwjcooldd       2008.2.17

  }
  lmh := TMyTimerEnableMessageHandler.Create;
  lmh.FTimer := Timer;

  BizSys.GlobalContext.AddMessageHandler(TMyTimerEnableMessage.Name, lmh);
end;

-------------------------------------------------------------zwjUtils
TMyTimerEnableMessage = class(TBizMessage)
  private
    FMsg: String;
  public
    constructor Create(AMsg: String);
    static function Name: String;
    property msg: String read FMsg;
  end;
//---------
//定义消息接收类
type
  TMyTimerEnableMessageHandler = class(TBizMessageHandler)

    FTimer: TTimer;

  public
    procedure DoExecute(AMessage: TBizMessage; const AParam: THandleParam;
      var Handled: Boolean); override;
  end;
implementation
procedure TMyTimerEnableMessageHandler.DoExecute(AMessage: TBizMessage; const AParam: THandleParam;
      var Handled: Boolean);
begin
  if AMessage is TMyTimerEnableMessage then
  begin

    FTimer.enabled:=SysUtils.strToBool((AMessage as TMyTimerEnableMessage).msg);
    Handled := True;
  end;
end;
constructor TMyTimerEnableMessage.Create(AMsg: String);
begin
  inherited Create(TMyTimerEnableMessage.Name);
  FMsg := AMsg;
end;

static function TMyTimerEnableMessage.Name: String;
begin
  Result := 'EnableTimer';
end;-----------
---------------------------------------------新闻公告信息
procedure TNEWSPLACARDINFO.DataSetBizTaskDataAfterApplyUpdates(Sender: TObject; var OwnerData: object);
var
lMsg: TMyTimerEnableMessage;
begin
  Inherited;

  lMsg := TMyTimerEnableMessage.Create('true');
  BizSys.GlobalContext.SendMessage(lMsg);
  lMsg.Free;
end;
--------------------------------------------------
回复

使用道具 举报

 楼主| 发表于 2008-2-18 10:11:46 | 显示全部楼层
procedure TNEWSPLACARDINFO.MessageIssuance(Task: TTask);   
放在它里面好了
OK
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-7 02:11 , Processed in 0.038684 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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