Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 06.03.2016
Сообщений: 10
1

Изменение картинки в PictureBox

16.05.2017, 18:30. Просмотров 3094. Ответов 3
Метки нет (Все метки)

Всем привет! Работаю в Visual Studio 2015, требуется на одной форме при нажатии на кнопку сменить картинку, имеется 2 картинки на пробу, одна уже вставлена в PictureBox, обе картинки лежат в Debug, код на кнопке такой

C#
1
2
3
4
5
 private void button1_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = null;
            pictureBox1.Image = System.Drawing.Image.FromFile("....jpg");
        }
Ничего не происходит, по отдельности - null работает, а вот FromFile нет

Добавлено через 2 часа 58 минут
Старая проблема на новый лад
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
namespace WindowsFormsApplication4
{
    public partial class Form3 : Form
    {
        public static int i;
        public Form3()
        {
            InitializeComponent();
        }
        int g=0;
        private void button1_Click(object sender, EventArgs e)
        {
            switch (g)
            {
                case 1:
                    if (textBox1.Text.ToString() == "96")
                    {
                        i++;
                        g++;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina5.jpg"); break;
                    }
                    if (textBox1.Text.ToString() != "96")
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina5.jpg");
                    } break; 
                case 2:
                    if (textBox1.Text.ToString() == "13")
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina8.jpg"); break;
                    }
                    else
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina8.jpg");
                    } break;
                case 3:
                    if (textBox1.Text.ToString() == "5")
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina10.jpg"); break;
                    }
                    else
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina10.jpg");
                    } break;
                case 4:
                    if (textBox1.Text.ToString() == "136")
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina71.jpg"); break;
                    }
                    else
                    {
                        i += 0;
                        g += 1;
                        pictureBox1.Image = null;
                        pictureBox1.Image = Image.FromFile("tabrabkina71.jpg");
                    } break;
                case 5:
                    if (textBox1.Text.ToString() == "9")
                    {
                        i += 0;
                        g += 1;
                        Form6 form6 = new Form6();
                        this.Visible = false;
                        form6.ShowDialog();
                        this.Close();
                        break;
                    }
                    else
                    {
                        i += 0;
                        g += 1;
                        Form6 form6 = new Form6();
                        this.Visible = false;
                        form6.ShowDialog();
                        this.Close();
                        break;
                    }
            }
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            button1.Enabled = false;
            if (textBox1.TextLength > 0)
            {
                button1.Enabled = true;
            }
        }
 
        private void Form3_Load_1(object sender, EventArgs e)
        {
            button1.Enabled = false;
        }
    }
    }
Организуется смена картинок на одной форме в одном объекте, но картинки не меняются, при условии что код указанный изначально на самом деле рабочий, косяк видимо в case
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2017, 18:30
Ответы с готовыми решениями:

Изменение масштаба картинки в PictureBox
Проблема такова! У меня есть карта, загруженная, как в свойствах PictureBox...

Изменение картинки в PictureBox при наведении курсора
При наведении на picturebox фон изменяется на другую картинку. Как это сделать?

Прозрачный фон у картинки на элементе PictureBox непрозрачен для другого PictureBox
Здравствуйте! Проблема состоит в следующем! У меня есть картинка .png с прозрачным фоном. При...

Как задать плавное перемещение картинки в PictureBox (или перемещение самого PictureBox) из точки А в точку Б по прямой?
Необходимо задать плавное перемещение по прямой линии из "А" в "Б" по нажатию "Button"

3
544 / 522 / 224
Регистрация: 02.11.2016
Сообщений: 1,538
16.05.2017, 18:58 2
Лучший ответ Сообщение было отмечено Baddarorn как решение

Решение

Цитата Сообщение от Baddarorn Посмотреть сообщение
косяк видимо в case
Именно там! У Вас объявляется переменная int g=0; и далее в коде нигде не меняется. Т.е. оператор switch (g) не работает.
1
0 / 0 / 0
Регистрация: 06.03.2016
Сообщений: 10
16.05.2017, 19:11  [ТС] 3
Слепой)) Спасибо большое
0
544 / 522 / 224
Регистрация: 02.11.2016
Сообщений: 1,538
16.05.2017, 19:16 4
Цитата Сообщение от Baddarorn Посмотреть сообщение
Ничего не происходит, по отдельности - null работает, а вот FromFile нет
Скорее всего проблема в пути к файлу. Проверьте имя файла и его наличие по указанному пути. Можно попробовать использовать OpenFileDialog.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2017, 19:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Передвижение картинки по PictureBox
пробую работать с графикой. следующая задача: в picturebox поместил изображение- карта России....

Смена картинки в PictureBox
Всем доброго времени. Знаю, что вопрос глупый и уже много раз встречался но что то сам решить не...

Редактирование картинки в PictureBox
Здравствуйте. Скажите пожалуйста, как добавить в форму такой контрол, как в картине. что бы...

Загрузка картинки в PictureBox
Помогите пожалуйста,как загрузить изображение в элемент PictureBox?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.