0

2日前にチェスゲームについて質問したところ、友達から下のコードを教えてもらったのですが、質問があります。このリンクでした

参照してください:プライベート画像Displayimage;

チェスの駒の画像をどのように入れるべきか、どこに置くべきかわかりません。クラスPiecePosition{

    public enum ChessColor
    {
        White,
        Black,
    }
    public class ChessPiece
    {
        private Image DisplayedImage;
        private ChessColor DisplayedColor;
        private Point CurrentSquare;
        private Point[] ValidMoves;
        public ChessPiece(Image image, ChessColor color)
        {
            DisplayedImage = image;
            DisplayedColor = color;
        }
    }
    public class KingPiece : ChessPiece
    {

        public KingPiece(Image image, ChessColor color)
            : base(image, color)
        {
            ValidMoves[0] = new Point(0, -1);    //  Up 1
            ValidMoves[1] = new Point(1, -1);    //  Up 1, Right 1
            ValidMoves[2] = new Point(1, 0);     //  Right 1

            ValidMoves[7] = new Point(-1, -1);  //  Left 1, Up 1
        }

    }
    public class Board
    {

        private ChessPiece[,] square;
        private int SquareWidth;    //  Number of pixels wide
        private int SquareHeight;    //  Number of pixels high



    }
}
4

2 に答える 2

3

ソースコードと一緒に画像をコンパイルしてアクセスする方法がわからない場合は、リソースを使用して画像をプロジェクトに追加するのが最も簡単な方法です。これにより、実行可能ファイルに直接コンパイルされるプロジェクトに埋め込みリソースとして外部ファイルを簡単に追加できます。

プロジェクトにリソースを追加するには、次の手順に従います。

  1. ソリューションエクスプローラーで、リソースを追加するプロジェクトを右クリックします。[プロパティ]オプションを選択し、[リソース]タブをクリックします。
  2. [リソース]ウィンドウの上部にあるツールバーを見ると、最初のボタンを使用して、プロジェクトで追加または編集するリソースのタイプを選択できます。あなたの場合、画像を追加したいので、ドロップダウンメニューのオプションのリストから「画像」を選択します。
  3. 次に、[リソースの追加]ボタンの横にあるドロップダウン矢印をクリックします。ここから、新しい画像(Visual Studio内から描画および編集できます)を追加するか、コンピューターに既にある既存の画像を追加できます。

プロジェクトファイルにリソースを追加したので、次のようにコードでリソースを使用できます(すべてのアクセスの詳細はResourceManagerクラスによって自動的に処理されます)。

System.Drawing.Bitmap kingImage = MyChessGame.Properties.Resources.KingImage;
KingPiece kingPiece = new KingPiece(kingImage, ChessColor.White);
于 2010-11-06T11:22:47.230 に答える
1

画像の場所を指定する必要があります(できればリソース)。
まず、画像をリソースに追加します。詳細については、MSDNのこのリンクを確認してください。次に、次のようなことを行います。

var KingImage = WindowsFormsApplication1.Properties.Resources.KingImage;
var kingPiece = new KingPiece(KingImage, Color.Black);
于 2010-11-06T11:08:19.180 に答える