stride3d/stride-community-toolkit

Updated Stride.UI Example

开放

#275 创建于 2025年5月22日

 (0 条评论) (1 个反应) (1 位负责人)C# (31 个派生)auto 404
examplehelp wanted

仓库指标

星标
 (125 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

I meant to add this code snippet here a while ago but was reminded with the recent issue Keepsie brought up in the Discord.

I will update the examples soon but I just want to document it here in case people wonder how to add SpriteSheet buttons to their UI.

public class TestUI : StartupScript
{
    private SpriteSheet _uiSpriteSheet;

    private SpriteFromSheet _buttonPressed;
    private SpriteFromSheet _buttonNotPressed;
    private SpriteFromSheet _buttonHover;

    public override void Start()
    {
        var buttonSheet = Content.Load<SpriteSheet>("StrideUIDesigns");

        _buttonNotPressed = new()
        {
            Sheet = _uiSpriteSheet,
            CurrentFrame = 1,
        };

        _buttonHover = new()
        {
            Sheet = _uiSpriteSheet,
            CurrentFrame = 0,
        };

        _buttonPressed = new()
        {
            Sheet = _uiSpriteSheet,
            CurrentFrame = 2,
        };
    }

    private void CreateButton()
    {
        var button = new Button
        {
            MouseOverImage = _buttonHover,
            PressedImage = _buttonPressed,
            NotPressedImage = _buttonNotPressed,
        };
    }
}

贡献者指南