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

Создание массива элементов Label

13.05.2011, 00:09. Показов 12005. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно этот вопрос уже поднимался, но я поискав среди тысячи тем так его и не нашел.
Прошу у вас помощи уважаемые форумчане. У меня есть на форме 36 штук лэйблов в виде таблицы 6х6. Я хочу создать ДВУМЕРНЫЙ массив и заполнить его этими лабелами. Так что бы я мог потом писать некий алгоритм действий над ними. Так вот как объявить, выделить память, заполнить массив я не имею почти никакого представления. С этой средой был вынужден столкнуться недавно. Так что опыт работы в ней очень мал.

ПОМОГИТЕ ПОЖАЛУЙСТА! Подскажите как мне сделать массив лэйблов. Может кому то понадобиться весь проект для полного понимания вопроса.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.05.2011, 00:09
Ответы с готовыми решениями:

Создание новых элементов PictureBox и Label
Прошу помочь так как с CLI начал работать не давно, не могу понять как создавать элементы PictureBox и Label с помощью кнопки, чтобы по...

Создание массива объектов формы Label
Итак, у меня есть n-мерный массив и n-Label-ов. Хотелось бы как-то облегчить себе жизнь с его выводом на форму. Подскажите, можно ли...

Динамическое создание элементов CheckBox и Label
Здравсвуйте помогите пожалуйста задача такая динамически создоем элемент CheckBox и на его собитие CheckedChanged создается Label при...

9
 Аватар для slava_g1
75 / 75 / 32
Регистрация: 06.02.2011
Сообщений: 127
13.05.2011, 01:21
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public partial class Form1 : Form
    {
        List<Label> list = new List<Label>();
        public Form1()
        {
            InitializeComponent();
            list.Add(label1);
            list.Add(label2);
            list.Add(label3);
            list.Add(label4);
            list.Add(label5);
            list.Add(label6);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            for(int i=0;i<list.Count;i++){
                list[i].Left+=50;
            }
        }
    }
Если помогло, спасибо ниже)
0
Заблокирован
13.05.2011, 03:32
Цитата Сообщение от Lenko.A.N Посмотреть сообщение
Я хочу создать ДВУМЕРНЫЙ массив и заполнить его этими лабелами.
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
Label[,] _Labels = new Label[7, 15];
 
        public Form1()
        {
            InitializeComponent();
            this.AutoSize = true;
            int count = 0;
 
            for (int i = 0; i < _Labels.GetLength(0); i++)
            {
                for (int j = 0; j < _Labels.GetLength(1); j++)
                {
                    count++;
                    _Labels[i, j] = new Label();
                    _Labels[i, j].Width = 58;
                    _Labels[i, j].Height = 15;
                    _Labels[i, j].Location = new Point(_Labels[i, j].Width * i + i * 3, _Labels[i, j].Width *  j/2);
                    _Labels[i, j].Text = "Label " + count.ToString();
                    _Labels[i, j].Tag = i;
                    _Labels[i, j].Name = "Label " + count.ToString();                    
                    this.Controls.Add(_Labels[i, j]);
                    _Labels[i, j].BackColor = Color.Orange;
 
                   
                   
                }
            }
0
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 25
13.05.2011, 12:30  [ТС]
Спасибо за варианты. Но код не подходит, надо использовать другой синтаксис. На пример что бы толи объявить объект класса, или выдлеить память под массив. Не знаю точно что именно происходит в этом выражении но начать нужно с него:
C++
1
static  cli::array<System::Windows::Forms::Label^> ^Arrlab = gcnew cli::array<System::Windows::Forms::Label^>(6);
где 6- размер массива.

Добавлено через 10 минут
Я привел пример объявлени одномерного массива. Сначала наверно лучше разобраться с одномерным. А потом к двумерному перейти.
0
Заблокирован
13.05.2011, 12:38
Цитата Сообщение от Lenko.A.N Посмотреть сообщение
Сначала наверно лучше разобраться с одномерным. А потом к двумерному перейти.
Это точно
Цитата Сообщение от Lenko.A.N Посмотреть сообщение
или выдлеить память под массив.
Цитата Сообщение от 3G Посмотреть сообщение
Label[,] _Labels = new Label[7, 15];
0
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 25
13.05.2011, 12:43  [ТС]
Вот всмотри. У менят есть проект в котором 2 формы, прочие еще файлы для правильной работы и есть главный файл проекта. В нем пишется запуск первой формы, или второй, или обоих по очереди. Ну вобщем Пульт управления так скажем *.cpp. И у двух форм тоже есть файлы Form1.h и Form2.h где пишется код описывающий именно их. Так вот я хочу создавать массив для формы 2. Форма два прикреплена к главному файлу проекта. Где непосредственно мне писать код массива. В Form2.h или в *.сpp (главный файл проекта)?
0
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 25
13.05.2011, 12:47  [ТС]
Тот код что ты предлогаешь по синтаксису не отвечает установленным нормам. У нас недопонимание. Я попробую прикрепить файл проекта. Взгляни пожалуйста что бы понять о чем я говорю.
Вложения
Тип файла: rar Cross vs Zero.rar (4.13 Мб, 65 просмотров)
0
Заблокирован
13.05.2011, 13:42
Цитата Сообщение от Lenko.A.N Посмотреть сообщение
У нас недопонимание.
Цитата Сообщение от Lenko.A.N Посмотреть сообщение
В Form2.h или в *.сpp
Я специализируюсь на Шарпе, а не на плюсах. А если бы захотел писать на С++, то только не в Студии, а в Билдере.
0
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 25
13.05.2011, 15:37  [ТС]
Я продвинулся. Вот похоже способ создать массив:

C++
1
2
array<System::Windows::Forms::Label^>^ArrLab = gcnew array<System::Windows::Forms::Label^>(6);
ArrLab[1]= gcnew System::Windows::Forms::Label();
Вопрос теперь как несколько другой. Как же вот теперь указать что в ячейку под номером 1 массива ArrLab, я хочу положить к примеру Label11? И не просто Label11 а из конкретной формы.

Добавлено через 1 час 28 минут
Все. Тема закрыта. Я нашел ответ на свой вопрос! У кого похожие проблемы обращайтесь, буду рад помоч. Если смогу =)
0
1 / 2 / 0
Регистрация: 28.03.2017
Сообщений: 50
Записей в блоге: 1
17.11.2018, 22:35
У меня вопросы. Только у меня 118 + (возможно и более, по обстоятельствам) Label и хочу загнать в массив или список, чтоб потом делать с ними какие-то операции.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.11.2018, 22:35
Помогаю со студенческими работами здесь

Создание динамического массива Label с подпиской на события
Доброго времени суток, уважаемые форумчане. знаком с c# недавно, пытаюсь разбираться по ходу возникновения проблем. понадобилось...

Вывод элементов массива в случайные Label
Есть массив чисел от 1 до 10. Есть 10 Label (Label1 - Label10). Как сделать так, чтобы при нажатии на Button1 каждый элемент массива...

Вывод в label суммы элементов массива
private void button1_Click(object sender, EventArgs e) { int i;//номер элемента double elem; ...

Как вывести номера элементов массива в Label если встречается нулевой элемент?
Как вывести номера элементов массива в Label если встречается нулевой элемент? For k = 1 To 20 Step 1 If A(k) = 0 Then ...

Создание массива и поиск равных среднему арифметическому элементов массива
Создать массив (пусть это будет целочисленный массив), состоящий из 100 элементов. Считать количество используемых элементов в программе в...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru