PictureBox не отображается - PullRequest
0 голосов
/ 27 мая 2020

Я пытаюсь загрузить карты в свой 2D-платформер, сканируя файл, в котором есть множество чисел, а затем рисуя плитки, соответствующие этим числам, по порядку. Файл можно загружать и читать, но когда я запускаю программу, плитки не отображаются в окне. Вот код для загрузки карт:

        int x;
        int y;
        int row = 0;
        bool loading = true;
        string level;
        char tile;
        try
        {
            level = File.ReadLines(@"Assets\maps.txt").Skip(map - 1).Take(1).First();
        }
        catch (FileNotFoundException)
        {
            MessageBox.Show("Can't find map file. Was it accidentally deleted?", "Error");
            throw;
        }
        catch (DirectoryNotFoundException)
        {
            MessageBox.Show("Can't find Assets folder. Was it accidentally deleted?", "Error");
            throw;
        }
        catch (Exception e)
        {
            MessageBox.Show("Unknown Error, contact the developer for more information.\n\nError Log: " + e.Message, "Error");
            throw;
        }
        while (loading)
        {
            y = row * 32;
            for (int i = 0; i < 20; i++)
            {
                x = i * 32;
                tile = level[i];
                PictureBox newTile = new PictureBox();
                newTile.Name = tile + ":" + x + "," + y;
                newTile.Size = new Size(32, 32);
                newTile.Location = new Point(x, y);
                newTile.Image = Image.FromFile(@"Assets\Sprites\tile" + tile + ".png");
                this.Controls.Add(newTile);
            }
            row++;
            if (row > 15)
            {
                loading = false;
            }
        }

Извините, это не очень чисто, это только для моего класса 11, поэтому у меня нет времени, чтобы сделать его красивым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...