メインコンテンツまでスキップ

シェイプの色やサイズを変更する

シェイプの色の変更はIShapeStyleオブジェクトのプロパティを変更します。シェイプの大きさの変更はINodeオブジェクトのSetSizeAtメソッドを用います。変更できる色はリンクをご確認ください。

public void ChangeColorAndSize(ICommandContext c, ICommandParams p)
{
// 現在表示しているダイアグラムを取得します
IDiagram diagram = c.App.Workspace.CurrentEditor as IDiagram;
if (diagram == null)
{
// ダイアグラムを表示していない場合は処理を終了します
c.App.Output.WriteLine("sample", "ダイアグラムを表示していません");
return;
}

// ダイアグラム上に表示されているノードを取得します
INode node = diagram.Nodes.FirstOrDefault();
if (node == null)
{
// ノードを表示していない場合は処理を終了します
c.App.Output.WriteLine("sample", "ノードが表示されていません");
return;
}

// ノードのスタイルを取得し、色を変更します
IShapeStyle style = node.Style;
style.BackColor = "Red"; // 背景色を既定値で変更します
style.ForeColor = "#ffffff"; // 前景色をコードで変更します

// ノードの大きさを変更します
node.SetSizeAt(100, 100);
}

また、System.Drawing.Sizeでサイズを変更することもできます。 その場合はINodeオブジェクトのSetSizeメソッドを用います。

public void SetSize(ICommandContext c, ICommandParams p)
{
// 中略
// ノードの大きさを変更します
System.Drawing.Size size = new System.Drawing.Size(200, 100);
node.SetSize(size);
}