1

基本列挙型にTexture2Dを使用したいと思います。カラーの仕組みに似ています。すなわち。Color.Black

Texture2Dをベースとして使用できないため、これはコンパイルされません。このコードを使用して、必要なものを示しています。

public class Content
{
    public Dictionary<string,Texture2D> Textures =new Dictionary<string, Texture2D>();
}


public enum Texture:Texture2D
{
    Player = Content.Textures["Player"],
    BackGround = Content.Textures["BackGround"],
    SelectedBox = Content.Textures["SelectedBox"],
    Border = Content.Textures["Border"],
    HostButton = Content.Textures["HostButton"]
}

その後、次のように使用できます

Texture2D myTexture= Content.Texture.Player;
4

1 に答える 1

3

オブジェクトを列挙型のベースとして使用することはできません。できることは、さまざまなテクスチャを静的プロパティとしてクラスに追加することです。

public static class Texture
{
    public static Texture2D Player { get; private set; }
    public static Texture2D BackGround { get; private set; }
    ...

    static Texture()
    {
        Player = Content.Textures["Player"];
        BackGround = Content.Textures["BackGround"];
        ...
    }
}

そうすれば、好きなように使用できます。

Texture2D myTexture = Texture.Player;
于 2012-07-09T12:58:20.793 に答える