Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/19: Рейтинг темы: голосов - 19, средняя оценка - 4.63
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27

Работа с pictureBox...

27.11.2011, 02:36. Показов 3509. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу в цикле обращаться к разным pictureBox...
Понимаю что написан бред, может нужно както через 'k' или (k)...
Подскажите как будет верно... и вообще возможно ли ?!
Спасибо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int k=0;
 
for(int i=1; i<=15; i++)
{
    
    for(int j=1; j<=15; j++)
    {
        k++;    
        if(mas[i][j]==1)
        pictureBox[k] -> Visible = true;
        if(mas[i][j]==0)
        pictureBox[k] -> Visible = false;
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.11.2011, 02:36
Ответы с готовыми решениями:

Работа с picturebox
Добрый день, уже посмотрел все но так и не смог найти ответа. Дело в том нужно сделать что то на подобии раскраски для детей. Есть простая...

Работа с PictureBox
Есть задачка... я строю определенный график, вывожу текст и прочую фигню на ПикчерБокс... после этого делаю что бы в комбинации MousDown...

Работа с Picturebox
Для проекта очень нужно, как заставить Picturebox крутиться вокруг своей оси?

12
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
27.11.2011, 22:03
Нужно поместить PictureBox'ы в коллекцию, а в ней уже можно по индексу обращаться к элементам. Как то так:
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
 using namespace System::Collections::Generic
 
 
//Создаем коллекцию элементов
List<PictureBox^>^ list1 = gcnew List<PictureBox^>;
 
 
 
//Если PictureBox будут создаваться во время работы приложения, то можно так
for(int i = 0; i <15; i++)
{
PictureBox^ pb = gcnew PictureBox;
 
//Здесь далее задаем нужные свойства (расположение, источник картинки и т.д.)
//...
list1->Add(pb);
}
 
//Либо, если элементы PictureBox уже есть на форме, вручную добавляем их в коллекцию
list1->Add(pictureBox1);
list1->Add(pictureBox2);
//....
 
 
 
//Обращение идет как в обычном массиве:
for(int i = 0; i < list1->Count-1; i++)
{
list1[i]->ImageLocation = "C:\\";
}
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
29.11.2011, 20:46  [ТС]
Спасибо гигантское !

Добавлено через 25 минут
Я паходу тупой капец,
такая запись не работает...
Мне нужно чтобы параметр Visible менялся...

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
                                  int mas[225], masfood[225];
 
             for(int i=1; i<=225; i++)
             {
                 mas[i]=0;
                 masfood[i]=0;
             }
 
             int k=1, e=1;
                    mas[k]=1;
             masfood[e]=1;
             
                                 using namespace System::Collections::Generic
 
                   List<PictureBox^>^ list1 = gcnew List<PictureBox^>;
 
            list1->Add(pictureBox1);
            list1->Add(pictureBox2);
 
            for(int i = 0; i < list1->Count-1; i++)
            {
                if(mas[i]==1)
            list1[i]->Visible=true;
            }
Что поменять ?
0
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
29.11.2011, 21:33
Да, не совсем то что нужно получилось... Попробуй так: (этот вариант проверил - работает)
C++
1
2
3
4
5
6
7
8
9
array<PictureBox^>^ list1 = gcnew array<PictureBox^>(2);
 
                 list1[0] = pictureBox1;
                 list1[1] = pictureBox2;
 
                 for(int i = 0; i < list1->Length; i++)
                 {
                    list1[i]->Visible =false;
                 }
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
29.11.2011, 21:59  [ТС]
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
             int mas[225], masfood[225];
 
             for(int i=1; i<=225; i++)
             {
                 mas[i]=0;
                 masfood[i]=0;
             }
 
             int k;
             k=1; //rundom k
             mas[k]=1;
             
             /*      
             do
             {
                 //rundom e
             }
             while(e!=k)
             masfood[e]=1;
             */
 
            using namespace System::Collections::Generic
 
            array<PictureBox^>^ list1 = gcnew array<PictureBox^>(225);
 
            list1[0] = pictureBox1;
            list1[1] = pictureBox2;
 
            for(int i = 0; i < list1->Length; i++)
            {
            list1[i]->Visible =false;
            }
1>c:\sna\sna\Form1.h(3727): error C2143: синтаксическая ошибка: отсутствие ";" перед "<template-id>"
1>c:\sna\sna\Form1.h(3727): error C2065: list1: необъявленный идентификатор
1>c:\sna\sna\Form1.h(3727): error C2275: cli::array<Type>: недопустимое использование этого типа в качестве выражения
1> with
1> [
1> Type=System::Windows::Forms::PictureBox ^
1> ]
1>c:\sna\sna\Form1.h(3729): error C2065: list1: необъявленный идентификатор
1>c:\sna\sna\Form1.h(3730): error C2065: list1: необъявленный идентификатор
1>c:\sna\sna\Form1.h(3732): error C2065: list1: необъявленный идентификатор
1>c:\sna\sna\Form1.h(3732): error C2227: выражение слева от "->Length" должно указывать на тип класса, структуры или объединения либо на универсальный тип
1> тип: 'unknown-type'
1>c:\sna\sna\Form1.h(3734): error C2065: list1: необъявленный идентификатор
1>c:\sna\sna\Form1.h(3734): error C2227: выражение слева от "->visible" должно указывать на тип класса, структуры или объединения либо на универсальный тип
1> Создание кода...
1>
1>СБОЙ построения.
0
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
30.11.2011, 08:37
Скинь целиком проект (в аттаче), так сложно понять в чем дело.
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
30.11.2011, 08:54  [ТС]
Не знаю как прикрепить файл... Скажи пожалуйста свой email...
0
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
30.11.2011, 14:19
Лучше залей на rghost.ru например и ссылку выложи сюда
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
01.12.2011, 00:09  [ТС]
Вот:
http://rghost.ru/32744211
0
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
01.12.2011, 21:18
У тебя элементарная проблема - нужно переместить строку using namespace System::Collections::Generic (в конце кстати ты забыл в начало файла к аналогичным строкам using, и все будет ок
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
02.12.2011, 02:33  [ТС]
Блин... я немощный капец.

Сделал вышесказанно, остальной текст:
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
     int mas[225], masfood[225];
 
               for(int i=1; i<=225; i++)
             {
                 mas[i]=0;
                 masfood[i]=0;
             }
 
             int k=1; 
             mas[k]=1;
           
             int m=3;
             masfood[m]=1;
             /*      
             do
             {
                 //rundom e
             }
             while(e!=k)*/
            
             
 
            array<PictureBox^>^ list1 = gcnew array<PictureBox^>(225);
 
            list1[0] = pictureBox1;
            list1[1] = pictureBox2;
 
            for(int i = 1; i <= list1->Length; i++)
            {
                if(mas[i]==1)
            list1[i-1]->Visible =true;
                if(masfood[i]==1)
            list1[i-1]->Visible =true;
            }
прикрепил к кнопке.
Нажимая на кнопку программа закрывается...
Что это может быть ?
0
22 / 22 / 5
Регистрация: 07.02.2010
Сообщений: 67
02.12.2011, 08:18
Попробуй для начала исправить здесь:
измени for(int i = 1; i <= list1->Length; i++) на
for(int i = 1; i < list1->Length; i++)
0
3 / 3 / 3
Регистрация: 09.11.2011
Сообщений: 27
02.12.2011, 10:49  [ТС]
Таже ошибка (
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.12.2011, 10:49
Помогаю со студенческими работами здесь

Работа с pictureBox
Здравствуйте пряморукие программисты.Пишу морской бой в visual studio.Визуальное оформление программы решил реализовать из двух матриц...

работа с pictureBox
Возможно и ошибаюсь насчет pictureBox, но не знаю как еще можна работать с графикой. У меня есть рисунок, сбоку список названий других...

работа с PictureBox
Здравствуйте!Если кто знает..помогите пожалуйста. Проблема такая. есть 2 формы..они связаны. внутри формы-1 объявлена переменная url1,...

Работа с PictureBox
Добрый день, уважаемые программисты! Есть панель panel1, на которой расположен pictureBox1. Задача такая: вынести копию изображения...

Работа с PictureBox
Доброго времени суток! 1) Рисую на PictureBox две линии, используя метод DrawLine. 2) Эти две линии образуют крест. Вопрос...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru