ue4 c++ how to open a blueprint widget

C++
    // Where menu might be your widget.
    Menu->AddToViewport();

    // Step 0 get player controller.
    auto PlayerController = GetFirstLocalPlayerController();
    if (!ensure(PlayerController != nullptr)) return;

    // Step 1 setup an input mode. There are multiple such as game only or game and UI as well.
    FInputModeUIOnly InputModeData;
    // Step 2 config is specific to the type
    InputModeData.SetLockMouseToViewport(false);
    InputModeData.SetWidgetToFocus(Menu->TakeWidget()); //Because UMG wraps Slate

    // Step 3 set the mode for the player controller
    PlayerController->SetInputMode(InputModeData);

    // Step 4 enable cursor so you know what to click on:
    PlayerController->bShowMouseCursor = true;
Source

Also in C++: