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

フレンドリクエストメニューを追加する - フレンドを追加する - (Unreal Engine モジュール)

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

メニューの内容

このチュートリアルでは、送信または受信したフレンドリクエストを表示および処理するために使用するウィジェットを準備する方法を学びます。ウィジェットはリソースセクションで入手でき、以下で構成されています。

  • FriendRequestsWidget_Starter: 受信したフレンドリクエストを表示する機能を呼び出すために使用する C++ クラス。

    • ヘッダーファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/FriendRequestsWidget_Starter.h
    • CPP ファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/FriendRequestsWidget_Starter.cpp
    • Blueprint ウィジェット: /Content/TutorialModules/Social/FriendsEssentials/UI/W_FriendRequests_Starter.uasset
  • SentFriendRequestsWidget_Starter: 送信したフレンドリクエストを表示する機能を呼び出すために使用する C++ クラス。

    • ヘッダーファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/SentFriendRequestsWidget_Starter.h
    • CPP ファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/SentFriendRequestsWidget_Starter.cpp
    • Blueprint ウィジェット: /Content/TutorialModules/Social/FriendsEssentials/UI/W_SentFriendRequests_Starter.uasset
  • FriendWidgetEntry_Starter: 表示名、アバター、オプションボタンなど、受信または送信したフレンドリクエスト情報を表示するために使用する C++ クラス。

    • ヘッダーファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/FriendWidgetEntry_Starter.h
    • CPP ファイル: /Source/AccelByteWars/TutorialModules/Social/FriendsEssentials/UI/FriendWidgetEntry_Starter.cpp
    • Blueprint ウィジェット: /Content/TutorialModules/Social/FriendsEssentials/UI/W_FriendEntry_Starter.uasset

これらのウィジェットがどのように構築されているかの詳細を見てみましょう。

受信したフレンドリクエストウィジェット

受信したフレンドリクエストウィジェットには、リクエストステータスの各状態を表すいくつかの状態があります: 空、読み込み中、エラー、空でない(受信したフレンドリクエストリストを表示)。これらの状態は、AccelByte カスタム Widget Switcher: UAccelByteWarsWidgetSwitcher を使用することで実現されます。リスト自体は、エントリウィジェットクラスを受け取り、エントリを動的に生成する List View を使用して作成されます。以下は W_FriendRequestsWidget_Starter Blueprint ウィジェットのプレビューです。

Received friend requests widget Unreal Byte Wars add friend

上記のコンポーネントは、FriendRequestsWidget_Starter クラスのヘッダーファイルで宣言されています。

protected:
// ...
UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UAccelByteWarsWidgetSwitcher* Ws_FriendRequests;

UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UListView* Lv_FriendRequests;

このウィジェットの状態を変更するには、Ws_FriendRequests->SetWidgetState() を呼び出します。

送信したフレンドリクエストウィジェット

受信したフレンドリクエストウィジェットと同様に、送信したフレンドリクエストウィジェットも UAccelByteWarsWidgetSwitcher と、送信したフレンドリクエストエントリを表示する List View を使用します。

Sent friend requests widget Unreal Byte Wars add friend

送信したフレンドリクエストエントリを表示するリストは、SentFriendRequestsWidget_Starter クラスのヘッダーファイルで定義されています。

protected:
// ...
UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UAccelByteWarsWidgetSwitcher* Ws_FriendRequests;

UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UListView* Lv_FriendRequests;

このウィジェットの状態を変更するには、Ws_FriendRequests->SetWidgetState() を呼び出します。

フレンドエントリウィジェット

以下は W_FriendWidgetEntry_Starter Blueprint ウィジェットのプレビューです。このウィジェットは、表示名、アバター、オプションボタンなどのフレンド情報を表示します。このウィジェットは、以前にフレンド候補エントリの検索結果を表示するために既に使用しました。今回は、このウィジェットを使用して、受信および送信したフレンドリクエスト情報と関連するオプションボタンを表示します。

以下は、受信したフレンドリクエストを表示するエントリのプレビューです。

Received friend request entry widget Unreal Byte Wars add friends

以下は、送信したフレンドリクエストを表示するエントリのプレビューです。

Sent friend request entry widget Unreal Byte Wars add friends

以下は、このウィジェットで使用されるコンポーネントの宣言です。宣言は FriendWidgetEntry_Starter クラスのヘッダーファイルにあります。

protected:
// ...
UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UCommonButtonBase* Btn_Accept;

UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UCommonButtonBase* Btn_Reject;

UPROPERTY(BlueprintReadOnly, meta = (BindWidgetOptional, BlueprintProtected = true, AllowPrivateAccess = true))
UCommonButtonBase* Btn_Cancel;

UI の準備

このセクションでは、チュートリアルに従うためにウィジェットを準備する方法を学びます。

  1. FriendWidgetEntry_Starter クラスの CPP ファイルを開くと、以下の関数が見つかります。この関数は、承認ボタンがクリックされたときにトリガーされます。後で、この関数で受信したフレンドリクエストを承認する機能を呼び出します。

    void UFriendWidgetEntry_Starter::OnAcceptButtonClicked()
    {
    // ...
    }
  2. 同じく FriendWidgetEntry_Starter クラスの CPP ファイルで、以下の関数も見つかります。この関数は、拒否ボタンがクリックされたときにトリガーされます。後で、この関数で受信したフレンドリクエストを拒否する機能を呼び出します。

    void UFriendWidgetEntry_Starter::OnRejectButtonClicked()
    {
    // ...
    }
  3. 同じく FriendWidgetEntry_Starter クラスの CPP ファイルで、以下の関数も見つかります。この関数は、キャンセルボタンがクリックされたときにトリガーされます。後で、この関数で送信したフレンドリクエストをキャンセルする機能を呼び出します。

    void UFriendWidgetEntry_Starter::OnCancelButtonClicked()
    {
    // ...
    }
  4. FriendRequestsWidget_Starter クラスの CPP ファイルを開きます。そこに、以下の関数が見つかります。後で、この関数で受信したフレンドリクエストを取得して表示する機能を呼び出します。

    void UFriendRequestsWidget_Starter::GetFriendRequestList()
    {
    // ...
    }
  5. SentFriendRequestsWidget_Starter クラスの CPP ファイルを開きます。そこに、以下の関数が見つかります。後で、この関数で送信したフレンドリクエストを取得して表示する機能を呼び出します。

    void USentFriendRequestsWidget_Starter::GetSentFriendRequestList()
    {
    // ...
    }
  6. プロジェクトをビルドし、Unreal Engine エディターで開きます。エディターでゲームをプレイし、ログインすると、Social > Friend Requests メニューに移動できるはずです。

リソース