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

Чтение массива из Textbox

07.06.2015, 17:01. Показов 11619. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите с кодом,только начал изучать Forms
Нужно считать одномерный массив чисел из textbox'а,введенный через пробелы между элементами
Заранее благодарен
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.06.2015, 17:01
Ответы с готовыми решениями:

Чтение массива из файла в TextBox
Подскажите, пожалуйста, как считать массив из фала в TextBox

Чтение массива из файла в textbox и сохранение его в виде матрицы
Здравствуйте! Читаю массив из файла, после чего пихаю его в текстбокс, после чего надо сохранить прочтённый массив в виде матрицы, для...

Чтение чисел через пробел из одного textbox'a и перевод чисел в другой textbox
При выводе в textbox4 цикл for, все n раз, переводит из двоичной последовательности в десятичную только первую последовательность единиц и...

17
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 17:20
1Lyra, показывайте наработки,рассказывайте что сделали для решения задачи.
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 17:47  [ТС]
Сначала пытался оформить ввод поэлементно через текстбокс и кнопку,но не смог выяснить,работает ли оно
Одну переменную через MessageBox еще могу вывести,а массив не получается
C++
1
2
3
4
5
6
7
8
9
10
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
         {
             size_array = Convert::ToUInt32(numericUpDown1->Value);
             int *massiv = new int[size_array];
             int a = System::Convert::ToInt32(textBox1->Text);
             for (int i=0;i < size_array;i++)
             {
                massiv[i] = a;
             }
         }
Затем увидел способ,описанный в первом посте,но он для C#
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 18:26
Цитата Сообщение от 1Lyra Посмотреть сообщение
Затем увидел способ,описанный в первом посте,но он для C#
Приведите код,будем переводить. C++/CLI очень похож на C#.
Можете сделать сами руководствуясь вот этой темой:
Основные отличия C# от C++ CLI

Цитата Сообщение от 1Lyra Посмотреть сообщение
Одну переменную через MessageBox еще могу вывести,а массив не получается
Наращивайте в строку поэлементно.
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 18:42  [ТС]
Вот код
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
private void button1_Click(object sender, EventArgs e)
{
    int c = int.Parse(textBox1.Text); // Парсим значение из текстового поля textBox1.
    string[] sNums = textBox2.Text.Split(','); // Разбиваем текст из текстового поля textBox2, на массив строк, разделителем является , [запятая без пробелов].
    if (c > sNums.Length) { // Если кол-во элементов введенных в textBox1 больше элементов в массиве, то выводим сообщение.
        MessageBox.Show("Длина массива не соответствует введенному!");
        return;
    }
    int[] nums = new int[c]; // объявляем новый массив с количеством элементов = c.
    for (int i = 0; i < c; i++)
        nums[i] = int.Parse(sNums[i]); // проходимся по каждому элементу массива sNums и заносим значение в соответствующий элемент массива nums, перед этим его распарсив.
    ... // Далее по тексту.
}
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 19:00
1Lyra, покажите как переводили,если не получиться,поправлю.
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 19:44  [ТС]
S_el,
Получилось так
C++
1
2
3
4
5
6
7
8
9
10
11
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
         {
            
             int c = Int32::Parse(textBox2->Text); //длина массива
             string* sNums = new string[c]; //массив строк,который мы потом преобразуем в массив чисел?
             sNums = System::String::Split(' '); 
             int* nums = new int[c];
             for (int i = 0;i < c;i++)
                 nums[i] = Int32::Parse(sNums[i]);
 
         }
С Split так и не разобрался
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 20:06
1Lyra, отлично,осталось поправить совсем немного. Набросал пример для консоли.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using namespace System;
 
int main()
    {
    String^ textbox1 = "4";
    String^ textbox2 = "1 2 3 4 5 6";
    int c = Int32::Parse(textbox1); 
    array<String^> ^sNums = textbox2->Split(' ');
    if (c > sNums->Length) 
        { 
        Console::WriteLine("Длина массива не соответствует введенному!");
        return 0;
        }
    array<int> ^nums = gcnew array<int>(4);
    for (int i = 0; i < c; i++)
        nums[i] = Int32::Parse(sNums[i]);
 
    for each (int var in nums)
        Console::Write(var+"\t");
 
    Console::ReadLine();
    return 0;
    }
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 21:06  [ТС]
S_el,
Благодарю,работает
Получилось так
Решил посчитать сумму элементов,чтобы убедиться,что работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
         {
            
             int c = Int32::Parse(textBox2->Text);
             int sum =0;
             array<String^> ^sNums = textBox1->Text->Split(' ');
             array<int> ^nums = gcnew array<int>(c);
             for (int i = 0;i < c;i++)
                 nums[i] = Int32::Parse(sNums[i]);
             for (int i = 0;i<c;i++)
                 sum+=nums[i];
             for each (int var in nums)
                 MessageBox::Show(var+"\t");
  }
Что такое String^? и в частности ^?
И почему сообщение не выводится без каких-либо символов? То есть (var)
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 21:47
Цитата Сообщение от 1Lyra Посмотреть сообщение
Что такое String^? и в частности ^?
String - объект ссылочного класса для работы со строками в .Net
^ управляемый указатель,используется всегда при создании объекта ссылочного класса.
Подробнее можете почитать в этой теме:
Как называются и как работают приведённые операторы?
и в этой:
Основные отличия C# от C++ CLI

Цитата Сообщение от 1Lyra Посмотреть сообщение
И почему сообщение не выводится без каких-либо символов? То есть (var)
поясните.
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 22:10  [ТС]
S_el,
Спасибо

Цитата Сообщение от S_el Посмотреть сообщение
Сообщение от 1Lyra
И почему сообщение не выводится без каких-либо символов? То есть (var)
поясните.
То есть такое выражение
C++
1
MessageBox::Show(var)
Не сработает
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 22:12
Цитата Сообщение от 1Lyra Посмотреть сообщение
Не сработает
должно сработать,если есть метод для преобразования в строку.
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9674 / 4826 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
07.06.2015, 22:57
Цитата Сообщение от 1Lyra Посмотреть сообщение
C++
1
MessageBox::Show(var+"\t");
И такое не сработает. Складываем строки со строками или числа с числами.
0
0 / 0 / 0
Регистрация: 07.06.2015
Сообщений: 7
07.06.2015, 23:19  [ТС]
tezaurismosis, странно,но работает
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9674 / 4826 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
07.06.2015, 23:21
1Lyra,
C++
1
2
for each (int var in nums)
    MessageBox::Show(var::ToString());
0
Заблокирован
07.06.2015, 23:24
Цитата Сообщение от tezaurismosis Посмотреть сообщение
И такое не сработает. Складываем строки со строками или числа с числами.
tezaurismosis, так же сложение - лишнее кастование ни к чему
0
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
07.06.2015, 23:26
Цитата Сообщение от 1Lyra Посмотреть сообщение
странно,но работает
обратите внимание
Цитата Сообщение от S_el Посмотреть сообщение
должно сработать,если есть метод для преобразования в строку.
а он у int есть
0
07.06.2015, 23:31

Не по теме:

Цитата Сообщение от Ev_Hyper Посмотреть сообщение
так же сложение - лишнее кастование ни к чему
Да, а то уже Python начинает вспоминаться, там можно строки умножать на числа :)
Python
1
print("=" * 25)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.06.2015, 23:31
Помогаю со студенческими работами здесь

asp.net вызов textbox[i] из ранее созданного массива textbox
Есть две кнопки на веб-форме. Нажимая на первую получаем массив текстбоксов. Нажимая по второй нужно получить значения из созданных...

Чтение из TextBox`a
Помогите с кодом. Ни как не могу сделать чтобы из TextBox`a добавлялся IP вот сюда: str1(1) = &quot;shutdown -r -f -m \\Вот тут!:wall: -t...

Чтение из textBox
Привет всем.Подскажите как реализовать следующее:Есть определенный текст который вставляеться в textBox1.При нажатии кнопки текст должен...

Чтение данных из textbox
Здравствуйте, не могли бы вы помочь пожалуйста, мне нужно что бы программа считывала данные которые я буду вводить в textbox(то есть в...

Чтение чисел из TextBox
Интересуюсь, как бы считать не отдельные символы, а непосредственно ЧИСЛА из элемента TextBox, то есть 2-х и более -значные числа ? ...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
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. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru