Slate UI Button
使用《UE4 Slate创建独立窗口APP》的Demo学习使用简单的UE4 Slate Button。
Button的使用
//Button 单击事件处理函数
FReply OnButtonClick(FVector InOffset)
{
FString msg = FString::Printf(TEXT("Parameter Vector: %s"),*InOffset.ToString());
FText title = NSLOCTEXT("SlateAppProgram", "DefaultMessageTitle", "提示");
FMessageDialog::Open(EAppMsgType::Ok, FText::FromString(msg),&title);
return FReply::Handled();
}
TSharedRef<SWidget> MakeButton(FText InLabel, const FVector InOffset)
{
return SNew(SButton)
.Text(InLabel)
.OnClicked_Static(&OnButtonClick, InOffset);
}
int WINAPI WinMain(_In_ HINSTANCE hInInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPSTR, _In_ int nCmdShow)
{
//
......
//
TSharedPtr<SWindow> MainWindow = SNew(SWindow).ClientSize(FVector2D(1280, 720)).Title(
FText::FromString(TEXT("SlateAppProgram")))
[
SNew(SOverlay)
+SOverlay::Slot()
.HAlign(HAlign_Left)
.VAlign(VAlign_Top)
[
MakeButton(FText::FromString("ButtonClick"),FVector(0.0f,0.0f,256.0f))
]
];
//
......
//
}