Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26

Как с Form4 дать нужным PictureBox видимость, если PictureBox из Form6

08.06.2016, 22:13. Показов 4358. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как с Form4 по нажатию кнопки дать нужным PictureBox видимость, если PictureBox из Form6? Перелопатил все форумы , прочитал 100 раз мануал по WinForms.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.06.2016, 22:13
Ответы с готовыми решениями:

Как залить pictureBox нужным цветом?
Напишите пожалуйста код, для того, что бы очистить или залить нужным цветом picturebox.

PictureBox как отопразить по нужным параметрам?
Ребята нужна помощь! Создал изображение в формате .Png! Кинул в проект СплешСкрин - загрузочный экран! На него закинул PictureBox в...

Как остановить GIf анимацию в PictureBox по клику на сам PictureBox?
Добрый день! Прошу помочь решить вопрос с GIF анимацией в PictureBox. Задумка такова: Проигрывается гифка и при клике на на...

24
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
08.06.2016, 22:22
TomasWilliam, покажите, как именно вы пытаетесь и что не получается. Иначе трудно понять, в чем именно. В FAQ вроде бы все подробно уже описали с примерами.
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 22:24  [ТС]
Чуть-чуть поясню, у меня карточная игра , Form4 - как игровой стол , на ней есть кнопка "Ваши карты" - там список карт в руке. Мне нужно чтобы по её нажатию видимость нужных мне PictureBox Form6(формы6) , в которых до этого загружены карты , присвоило значение true .
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 22:28  [ТС]
Вот формы
Миниатюры
Как с Form4 дать нужным PictureBox видимость, если PictureBox из Form6   Как с Form4 дать нужным PictureBox видимость, если PictureBox из Form6  
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 22:31  [ТС]
Вот так пытаюсь сделать ( в mas1 случайные числа в ограничении от 0 до 35 )
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
private void button1_Click(object sender, EventArgs e)
        {
            Form6 form = this.ParentForm as Form6;
            for (int i = 0; i < mas1.Length; i++)
            {
                if (mas1[i] == 0)
                {
                    form.pictureBox1.Visible = true; form.pictureBox1.Refresh();
 
                }
                if (mas1[i] == 1)
                {
                    form.pictureBox2.Visible = true; 
 
                }
                if (mas1[i] == 2)
                {
                    form.pictureBox3.Visible = true; 
 
                }
                if (mas1[i] == 3)
                {
                    form.pictureBox4.Visible = true;
 
                }
                if (mas1[i] == 4)
                {
                    form.pictureBox5.Visible = true; 
 
                }
                if (mas1[i] == 5)
                {
                    form.pictureBox6.Visible = true; 
 
                }
                if (mas1[i] == 6)
                {
                    form.pictureBox7.Visible = true;
 
                }
                if (mas1[i] == 7)
                {
                    form.pictureBox8.Visible = true;
                  
                }
                if (mas1[i] == 8)
                {
                    form.pictureBox9.Visible = true;
 
                }
                if (mas1[i] == 9)
                {
                    form.pictureBox10.Visible = true;
 
                }
                if (mas1[i] == 10)
                {
                    form.pictureBox11.Visible = true;
 
                }
                if (mas1[i] == 11)
                {
                    form.pictureBox12.Visible = true;
 
                }
                if (mas1[i] == 12)
                {
                    form.pictureBox13.Visible = true;
                }
                if (mas1[i] == 13)
                {
                    form.pictureBox14.Visible = true;
                }
                if (mas1[i] == 14)
                {
                    form.pictureBox15.Visible = true;
                }
                if (mas1[i] == 15)
                {
                    form.pictureBox16.Visible = true;
                }
                if (mas1[i] == 16)
                {
                    form.pictureBox17.Visible = true;
                }
                if (mas1[i] == 17)
                {
                    form.pictureBox18.Visible = true;
                }
                if (mas1[i] == 18)
                {
                    form.pictureBox19.Visible = true;
                }
                if (mas1[i] == 19)
                {
                    form.pictureBox20.Visible = true;
                }
                if (mas1[i] == 20)
                {
                    form.pictureBox21.Visible = true;
                }
                if (mas1[i] == 21)
                {
                    form.pictureBox22.Visible = true;
                }
                if (mas1[i] == 22)
                {
                    form.pictureBox23.Visible = true;
                }
                if (mas1[i] == 23)
                {
                    form.pictureBox24.Visible = true;
                }
                if (mas1[i] == 24)
                {
                    form.pictureBox25.Visible = true;
                }
                if (mas1[i] == 25)
                {
                    form.pictureBox26.Visible = true;
                }
                if (mas1[i] == 26)
                {
                    form.pictureBox27.Visible = true;
                }
                if (mas1[i] == 27)
                {
                    form.pictureBox28.Visible = true;
                }
                if (mas1[i] == 28)
                {
                    form.pictureBox29.Visible = true;
                }
                if (mas1[i] == 29)
                {
                    form.pictureBox30.Visible = true;
                }
                if (mas1[i] == 30)
                {
                    form.pictureBox31.Visible = true;
                }
                if (mas1[i] == 31)
                {
                    form.pictureBox32.Visible = true;
                }
                if (mas1[i] == 32)
                {
                    form.pictureBox33.Visible = true;
                }
                if (mas1[i] == 33)
                {
                    form.pictureBox34.Visible = true;
                }
                if (mas1[i] == 34)
                {
                    form.pictureBox35.Visible = true;
                }
                if (mas1[i] == 35)
                {
                    form.pictureBox36.Visible = true;
                }
            }
0
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
08.06.2016, 22:35
C#
1
Form6 form = this.ParentForm as Form6;
Что-то странное. В какой вообще форме располагается этот код? Где создается объект класса Form6 покажите.
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 22:41  [ТС]
Код располагается в Form4 , а эта строчка написана входе всяких попыток. Вообще form - это у меня должна быть Form6.
0
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
08.06.2016, 22:45
Цитата Сообщение от EvilFromHell Посмотреть сообщение
Где создается объект класса Form6 покажите.
Вопрос остается открытым.
0
 Аватар для spit
4 / 4 / 1
Регистрация: 08.06.2016
Сообщений: 19
08.06.2016, 22:47
в form6.disigner.cs попробуйте поменять
private System.Windows.Forms.PictureBox pictureBox1;
на
public System.Windows.Forms.PictureBox pictureBox1;
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 22:51  [ТС]
Я знаю , что это не так , но просто всё уже перепробовал .
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
   private void button1_Click(object sender, EventArgs e)
        {
            Form6 form = new Form6();
            for (int i = 0; i < mas1.Length; i++)
            {
                if (mas1[i] == 0)
                {
                    form.pictureBox1.Visible = true; form.pictureBox1.Refresh();
 
                }
                if (mas1[i] == 1)
                {
                    form.pictureBox2.Visible = true; form.pictureBox1.Refresh();
 
                }
                if (mas1[i] == 2)
                {
                    form.pictureBox3.Visible = true; form.pictureBox1.Refresh();
 
                }
Добавлено через 1 минуту
паблики - давно сделал
0
 Аватар для spit
4 / 4 / 1
Регистрация: 08.06.2016
Сообщений: 19
08.06.2016, 23:00
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace ctrl
{
    public partial class Form1 : Form
    {
        Form2 f2 = new Form2();
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            
            f2.Show();
            
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            f2.pictureBox1.Visible = false;
        }
    }
}
попробуй создавать объект форм 6, не по нажатию кнопки а при загрузки главной формы, а потом обращаться к объекту.

Добавлено через 7 минут
а так получается, ты по нажатию кнопки ты создаёшь новую форму у которой
C#
1
visible = folse
и на этой форме меняешь видимость
C#
1
pivturebox
ов
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 23:01  [ТС]
не работает, Form4 не появляется
0
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
08.06.2016, 23:02
TomasWilliam, ну так у вас ссылка на созданный объект Form6 нигде не сохраняется что-ли? Вынесите ее в поле.
Да, и вместо вот этих портянок:
C#
1
2
3
4
             if (mas1[i] == 0)
                {
                    form.pictureBox1.Visible = true; form.pictureBox1.Refresh();
                }
Достаточно написать:
C#
1
2
var pb =  (PictureBox)form.Controls["pictureBox"+(mas1[i]+1).ToString()];
pb.Visible=true;
0
 Аватар для spit
4 / 4 / 1
Регистрация: 08.06.2016
Сообщений: 19
08.06.2016, 23:04
смотри, нужно что бы вот так работало?
Вложения
Тип файла: zip ctrl.zip (228.1 Кб, 5 просмотров)
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 23:05  [ТС]
На форме4 мне нужно - создать объект класса Form6, на которой заранее установлены PictureBox c Visible= false ; Некоторым из PictureBox дать Visible=true;И открыть Form6 .
0
 Аватар для spit
4 / 4 / 1
Регистрация: 08.06.2016
Сообщений: 19
08.06.2016, 23:08
Цитата Сообщение от TomasWilliam Посмотреть сообщение
На форме4 мне нужно - создать объект класса Form6, на которой заранее установлены PictureBox c Visible= false ; Некоторым из PictureBox дать Visible=true;И открыть Form6 .
глянь вложения, вроде бы, то что ты хочешь, но упрощённый вариант.
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 23:23  [ТС]
Почти , но исходя из вашего примера мне нужно сделать так Form1 -
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace ctrl
{
    public partial class Form1 : Form
    {
        Form2 f2 = new Form2();
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            f2.Show();
            f2.pictureBox1.Visible = true;
        }
    }
}
Form2-
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace ctrl
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
            pictureBox1.Visible = false;
        }
    }
}
Добавлено через 4 минуты
Но так не работает
0
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
08.06.2016, 23:29
Вот сколько читаю-так и не понял, что же не работает.
0
0 / 0 / 0
Регистрация: 03.05.2015
Сообщений: 26
08.06.2016, 23:34  [ТС]
Объект создаю тут
C#
1
2
3
4
5
namespace WindowsFormsApplication1
{
    public partial class Form4 : Form
    {
        Form6 form = new Form6();
Вот ошибка .
Миниатюры
Как с Form4 дать нужным PictureBox видимость, если PictureBox из Form6  
0
 Аватар для spit
4 / 4 / 1
Регистрация: 08.06.2016
Сообщений: 19
09.06.2016, 00:02
Цитата Сообщение от TomasWilliam Посмотреть сообщение
Но так не работает
что там не работает, все же в примере работает.
сделай аналогично. или так сделать не получается?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.06.2016, 00:02
Помогаю со студенческими работами здесь

Как расположить PictureBox над PictureBox
Пишу редакто блок-схем. Рабочая область - PictureBox. Как сделать так, что бы остальные PictureBox'ы были поверх основного. Пробовал...

Рисование линий на PictureBox: дать пояснения к коду
Здравствуйте! Объясните пожалуйста данный код: Picture1.Line (0, 0)-(Sin(0.5236 * (Hour(Time) + Minute(Time) / 60)) * 3.83, Cos(0.5236 *...

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

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

Программное создание PictureBox с проверкой, нет ли на его месте другого PictureBox
Здравствуйте! Нужно чтобы при нажатии кнопки создавался PictureBox с определёнными свойствами Location: x, y и SizeMode: Autosize и в него...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru