« OnCreateEventId (class) » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| (Une version intermédiaire par le même utilisateur non affichée) | |||
| Ligne 2 : | Ligne 2 : | ||
<source lang='delphi'>class function OnCreateEventID():string;</source> | <source lang='delphi'>class function OnCreateEventID():string;</source> | ||
Retourne l'identifiant de l'évènement de création d'un objet de cette classe. | |||
{|class="wikitable" | {|class="wikitable" | ||
| Ligne 23 : | Ligne 23 : | ||
Function doExecute(obj:TitObject):boolean; | Function doExecute(obj:TitObject):boolean; | ||
end; | end; | ||
Function MyTask.doExecute(obj:TitObject):boolean; | Function MyTask.doExecute(obj:TitObject):boolean; | ||
| Ligne 55 : | Ligne 41 : | ||
else Result := False; | else Result := False; | ||
end; | end; | ||
Function MyTask.Execute():boolean; | |||
var aMsg:TdbmQueueMessage; | |||
begin | |||
Result := False; | |||
aMsg := ReceivedMsg as TdbmQueueMessage; | |||
if Assigned(aMsg) then | |||
begin | |||
if Assigned(SourceObject) then | |||
begin | |||
Result := doExecute(SourceObject); | |||
end; | |||
end; | |||
end; | |||
//procedure RegisterTasks; | //procedure RegisterTasks; | ||
Dernière version du 9 janvier 2026 à 13:48
(Version 11)
class function OnCreateEventID():string;
Retourne l'identifiant de l'évènement de création d'un objet de cette classe.
| Return | L'identifiant de l'évènement |
Exemple
Type
MyClass = class(TdbObject)
//...
property CanStart:boolean;
end;
MyTask = class(TitTask)
Function Execute():boolean;
Function doExecute(obj:TitObject):boolean;
end;
Function MyTask.doExecute(obj:TitObject):boolean;
begin
if obj is MyClass then
begin
if (obj as MyClass).CanStart then
begin
AddMessage(Format('object %s ...',[(obj as MyClass).Caption]));
// do something ...
end
else
begin
AddMessage(Format('objet %s ne peut pas ...'),[(obj as MyClass).Caption]));
end;
Result := True;
end
else Result := False;
end;
Function MyTask.Execute():boolean;
var aMsg:TdbmQueueMessage;
begin
Result := False;
aMsg := ReceivedMsg as TdbmQueueMessage;
if Assigned(aMsg) then
begin
if Assigned(SourceObject) then
begin
Result := doExecute(SourceObject);
end;
end;
end;
//procedure RegisterTasks;
begin
MyClass.RegisterOnCreateEvent();
MyTask.Subscribe(
MyClass.OnCreateEventId(),
[],[]
);
end;
Voir aussi :