将图片框与值匹配

本文关键字: | 更新日期: 2023-09-27 18:37:04

这是我的第一篇文章,我真的需要帮助。

我的问题是我正在使用 C# 创建一个老虎机游戏,我已经让除了值之外的所有工作都正常工作。我的想法是我需要将图片与它的值相匹配,假设(图片小丑 = 100 分)。 无论如何可以使用函数来做到这一点,以便我以后可以在整个程序中调用它。

我尝试使用这种功能:

void ImageValues (int RollResult)
       {
           switch (RollResult)
           {
           case 0 :
           TempTotal += 100;
           break;
           case 1 :
           TempTotal += 225;
           break;
           case 2 :
           TempTotal += 550;
           break;
            case 3 :
           TempTotal += 775;
           break;
           case 4 :
           TempTotal += 1000;
           break;
       }
       }

但是当我调用函数时,我必须定义我想使用的情况。我无法将图片预定义为值,我的朋友告诉我尝试匹配索引,例如图片的索引来自:

int[] PictureValues = new int[]{100, 225, 550, 775, 1000};

到图片框数组:

PictureBox[] PictureboxArray = new PictureBox[5];

有没有办法做到这一点?感谢您的帮助。

编辑 1 ,图像是这样分配的

PictureboxArray[0] = pbxK;
        PictureboxArray[1] = pbxQueen;
        PictureboxArray[2] = pbxKing;
        PictureboxArray[3] = pbxJoker;
        PictureboxArray[4] = pbxAce;
        Rollimage[0] = Properties.Resources.K;
        Rollimage[1] = Properties.Resources.Queen;
        Rollimage[2] = Properties.Resources.King;
        Rollimage[3] = Properties.Resources.Joker;
        Rollimage[4] = Properties.Resources.Ace;
        pbxK.Image = Rollimage[0];
        pbxQueen.Image = Rollimage[1];
        pbxKing.Image = Rollimage[2];
        pbxJoker.Image = Rollimage[3];
        pbxAce.Image = Rollimage[4];

将图片框与值匹配

每个图片框控件都有一个名为 Tag 的属性,如果单击图片框,则会在属性窗口中看到它。您可以将预定义的分数值存储在标签中,并在必要时检索它们。

根据属性窗口,标记为:"User-defined data associated with the object"

您可以使用带有

卡名称和值的Dictionary<string,int>代替 int 数组。

enum Pics
{
   "K","Queen","King","Joker","Ace"
}

您可以使用卡的名称枚举卡的名称并将分支到特定事例,并将值添加到TempTotal

switch(RollResult)
{
     case Pics.K:
     TempTotal += picsDictionary["K"];
     break;
    //...
}
相关文章:
  • 没有找到相关文章