# コネクタ

> Aspose.Slides for C++ を使用して、シェイプ間にコネクタを追加、ルーティング、スタイル設定する方法を学びます。PPT、PPTX、ODP プレゼンテーションの例が含まれます。

Source: https://docs.aspose.com/slides/ja/cpp/examples/elements/connector/
Updated: 2026-02-19

この記事では、**Aspose.Slides for C++** を使用して、シェイプをコネクタで接続し、ターゲットを変更する方法を示します。

## **コネクタの追加**

スライド上の2点間にコネクタ シェイプを挿入します。

```cpp
static void AddConnector()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    auto connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 100, 100);
    presentation->Dispose();
}
```

## **コネクタへのアクセス**

スライドに追加された最初のコネクタ シェイプを取得します。

```cpp
static void AccessConnector()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 100, 100);

    // スライド上の最初のコネクタにアクセスします。
    auto connector = SharedPtr<IConnector>();
    for (auto&& shape :  slide->get_Shapes())
    {
        if (ObjectExt::Is<IConnector>(shape))
        {
            connector = ExplicitCast<IConnector>(shape);
            break;
        }
    }

    presentation->Dispose();
}
```

## **コネクタの削除**

スライドからコネクタを削除します。

```cpp
static void RemoveConnector()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    auto connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 100, 100);

    slide->get_Shapes()->Remove(connector);

    presentation->Dispose();
}
```

## **シェイプの再接続**

開始および終了ターゲットを割り当てて、コネクタを2つのシェイプに接続します。

```cpp
static void ReconnectShapes()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    auto shape1 = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 0, 0, 50, 50);
    auto shape2 = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 100, 50, 50);
    auto connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 100, 100);

    connector->set_StartShapeConnectedTo(shape1);
    connector->set_EndShapeConnectedTo(shape2);

    presentation->Dispose();
}
```
