![]() |
Модераторы: diadiavova, gambit |
![]() ![]() ![]() |
|
aaaate |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.4.2011 Репутация: нет Всего: нет |
Здравствуйте форумчане.
Задача моей программы выбирать нужную размерность матрицы (массива) и вводить туда данные, а потом выводить. Это нужно делать, путем создания динамического двумерного массива и закрепить его с каким-нить визуальным элементом. 1) Можете на примере показать как создать динамический двумерный массив, чтобы пользователь мог вводить\выводить (от)туда данные? 2) С каким визуальным элементом его будет проще всего связать, с TextBox, DataGrid?? Заранее спасибо, за то что обратили свое внимание на эту тему. |
|||
|
||||
diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Вопрос непонятен. Что значит "динамический массив"?
Можно попробовать DataGridView, но вообще для того, чтобы что-то советовать, надо иметь более полное представление о задаче. В принципе возможен вариант и с текстбоксами, расположенными в TableLayoutPanel. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||
|
|||||
aaaate |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.4.2011 Репутация: нет Всего: нет |
Динамический массив - размер которого определяется во время работы программы.
Вообще моя полная задача, - это создать программу , пользователь сможет выбирать требуемую размерность матрицы, введет данные (в какой-нить элемент управления DataGrid или TextBox, я новичок в этом, выберу, то что попроще), а моя программа решит это методом Гаусса и выдаст ответ(тоже в какой-нить элемент управления). У меня не хватит наглости всем этим грузить, я хочу сама разобраться. Но вопрос о том, как создать динамический двумерный массив и как заполнять в него данные, честно говоря завел меня в ступор (( |
|||
|
||||
diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну здесь все просто http://msdn.microsoft.com/ru-ru/library/w8k3cys2.aspx Это устаревший контрол и его уже не используют, вместо него есть DataGridView, он вполне подойдет для твоей цели.
А в чем проблема? У грида есть свойство Rows, возвращающее строки грида, туда можно программно добавлять строки удалять их и извлекать из них данные. У каждой строки есть свойство Cells, аналогичным образом возвращающее ячейки. Если надо работать с массивом(а это не самый лучший способ, предпочтительнее создать для матрицы собственный класс), то собственно данные надо переносить в двойном цикле: внешний обходит строки, внутренний - ячейки. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||
|
|||||
aaaate |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.4.2011 Репутация: нет Всего: нет |
Спасибо конечно, с созданием массива разобрались, но
Это все равно несколько не то. !!Нужно, чтобы пользователь (обычный человек, не владеющий языком программирования) визуально сам выбрал размер требуемой для него матрицы. !! Я не знаю как это программно реализовать(( ![]() Вот я нарисовала форму. Добавила 3 элемента DataGridView, 2 элемента NumericUpDown в пункт (1) должно вводиться ![]() в пункте (2) пользователь должен регулировать размерность матрицы потом нажимает "Решить" и в (3) DataGridView получит ответ Как программно реализовать чтобы пользователь через элементы "NumericUpDown" выбрал нужную размерность матрицы?
Rows не вижу, только RowsDeafultCellStyle. Все равно это не решает проблему(( . Как программно добавлять, удалять и извлекать данные, я тоже пока что без понятий. |
||||
|
|||||
aaaate |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.4.2011 Репутация: нет Всего: нет |
DataGridView более нагляден. Но увы, я не знаю, как через него реализовывать.
Поэтому для ввода матрицы скорей всего буду использовать InputBox, а для вывода решения TextBox. думаю организовать что-то вроде этого:
думаю организовать что-то вроде этого. Код не большой, не так наглядно. Но мне уже хоть как-нибудь , пожертвую "красотой", главное чтоб работало. Этот код для одномерного массива. Как организовать тоже самое, но для двухмерного, объявление, ввод переменных? Я признаться запуталась несколько в этом всем ![]() Это сообщение отредактировал(а) aaaate - 18.4.2011, 10:49 |
|||
|
||||
diadiavova |
|
||||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Это должен сделать не пользователь, а ты. Вот так ты объявляешь массив
А вот так изменяешь его размер
Лучше будет, если размер будет устанавливаться либо через диалоговое окно, либо после выбора количества строк и столбцов пользователь должен будет нажать кнопку, подтверждающую выбор и по ее нажатию вносить изменения в массив и в грид. Не надо туда вносить имен переменных, их лучше вынести в заголовки столбцов грида, а в ячейки вноси значения. http://msdn.microsoft.com/ru-ru/library/sy...dview.rows.aspx
Тебе надо работать с упомянутой коллекцией Rows и Columns Добавлено через 4 минуты и 56 секунд И чем это плохо? Применительно к данному случаю? То, что ты предлагаешь - кривой костыль, заменяющий встроенную функциональность. И чем он лучше грида? ![]() -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||||
|
|||||||
aaaate |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.4.2011 Репутация: нет Всего: нет |
Спасибо. Попозже отпишусь, что получилось. |
|||
|
||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума VB .NET | |
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | VB .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |