添加来自 javascript Enterprise Architect 的 属性 注释

Add property note from javascript Enterpreise Architect

我有一些代码,我想创建 Property Note

 var metric as EA.Element;
 metric = thePackage.Elements.AddNew("", "Text");

我应该用什么代替 Text 来添加我想要的?

我试过:

 metric = thePackage.Elements.AddNew(text, "Property Note");

 metric = thePackage.Elements.AddNew(text, "PropertyNote");

编辑:

 metric = thePackage.Elements.AddNew(text, "Note");

无效:

我期待

在红框中,而不是上面的 element

答案:

 metric = thePackage.Elements.AddNew("", "Text"); // the Note Property
 metric.SubType = 18; // This will actually make a simple Text behave as Note Property

正如所承诺的,这里是创建图表注释的代码。对 Perl 感到抱歉,但您可能可以将其翻译成 Javascript.

my $p = $rep->GetPackageByGUID("{157B01A5-8F9A-4458-8C7F-E48F5DA77B0A}"); # sample package
my $dnote = $p->Elements->AddNew("", "Text"); # the Note Property
$dnote->{SubType} = 18; # This will actually make a simple Text behave as Note Property
$dnote->Update(); # save in package elements
my $dia = $p->Diagrams->GetAt(0); # sample diagram
my $do = $dia->DiagramObjects->AddNew("l=10;r=110;t=-20;b=-80", ""); # place Note Property in diagram (coordinates are about top left)
$do->{ElementID} = $dnote->ElementID; # link with the Note Property
$do->Update(); # place in diagram
$rep->ReloadDiagram($dia->DiagramID); # make ir appear instantly