Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
1

Создание новых обьектов на форме путем клика по кнопке

30.03.2011, 16:33. Показов 1576. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
как сделать чтобы при нажатии на кнопку на форме появлялся новый текст бокс( вообще какой - либо обьект ) и как управлять координатами этого текст бокса ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2011, 16:33
Ответы с готовыми решениями:

Указатели и создание новых обьектов массивов итд
Вопрос у меня такой. Я как новичок спросил у преподавателя зачем нужны вообще указатели и он в...

Открытие формы или запроса путём клика на запись из списка в подчиненной форме
Есть база "Автотранспортное предприятие" в которой хочу переделать одну из форм по выдаче...

Как запретить конкретной форме/кнопке создание записи?
Вопрос в том, чтобы кнопкой осуществлялся переход на следующую запись, а когда записи походят к...

Обработчик клика по кнопке!
Всем доброго времени суток!!! Помогите пожалуйста!!!!!!!! Существует отчет в Access, т.к. "Поле...

10
32 / 34 / 3
Регистрация: 27.12.2009
Сообщений: 106
30.03.2011, 16:42 2
для появления можно сменить значение visible уже имеющегося объекта на true.
для изменения координат объекта использовать параметр Location
0
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
30.03.2011, 16:47  [ТС] 3
Цитата Сообщение от ailia Посмотреть сообщение
для появления можно сменить значение visible уже имеющегося объекта на true.
для изменения координат объекта использовать параметр Location
Мне надо, что бы пользователь сам определял сколько будет текст боксов на форме что то на подобие того что реализуется тут http://matrixcalc.org/ при нажатие на "+" и "-"
вот к примеру(ес он в тему конечно могу что- то путать) сеим образом я создавал новую форму
frm Форма myf1 = new frmФорма();
myf1.ShowDialog();
0
70 / 44 / 9
Регистрация: 10.08.2010
Сообщений: 140
30.03.2011, 17:05 4
Цитата Сообщение от Elman12 Посмотреть сообщение
Мне надо, что бы пользователь сам определял сколько будет текст боксов на форме что то на подобие того что реализуется тут http://matrixcalc.org/ при нажатие на "+" и "-"
вот к примеру(ес он в тему конечно могу что- то путать) сеим образом я создавал новую форму
frm Форма myf1 = new frmФорма();
myf1.ShowDialog();
Делаете что то вроде :
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
List<ComboBox> comboBoxes = new List<ComboBox>();
 
private void OnClick(object sender, EventArgs e)
{
comboBoxes.Add(new comboBox());
int i = comboBoxes.count;
 
//Установка позиции, размеров и прочих св-в
comboBoxes[i].Top =
comboBoxes[i].Left = 
 
this.Controls.Add(comboBoxes[i]);
}
Наверное должно работать =)
(не проверял)
1
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
30.03.2011, 17:30  [ТС] 5
Цитата Сообщение от Юрий АЛексеевич Посмотреть сообщение
Делаете что то вроде :
[CSHARP]
comboBoxes[i].Top =
comboBoxes[i].Left =
Какие значения они могут принимать?
что не подставлю(числовые значения) вылетает :"Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index".
0
36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
30.03.2011, 17:37 6
int i = comboBoxes.count;
Из-за этого и вылетает исключение....
Напиши
C#
1
int i = comboBoxes.count-1;
0
70 / 44 / 9
Регистрация: 10.08.2010
Сообщений: 140
30.03.2011, 17:37 7
Цитата Сообщение от Elman12 Посмотреть сообщение
Какие значения они могут принимать?
что не подставлю(числовые значения) вылетает :"Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index".
Упс там, вероятно надо использовать i-1. i - количество элементов в массиве. т.е. когда создаете первый текст бокс значение i должно быть = 0.
А расположение элементов необходимо высчитывать отталкиваясь от предыдущих, но если это первый элемент то откуда то брать фиксированных. Допустим так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
comboBoxes.Add(new comboBox());
int i = comboBoxes.count - 1;
 
//Установка позиции, размеров и прочих св-в
if (i==0)
{
    comboBoxes[i].Top = 10;
    comboBoxes[i].Left = 10;
}
else
{
   comboBoxes[i].Top = comboBoxes[i-1].Top + 30;
   comboBoxes[i].Left = 10;
}
 
this.Controls.Add(comboBoxes[i]);
Весь код пишу в браузере, поэтому возможны ошибки.
1
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
30.03.2011, 17:44  [ТС] 8
ммм к коду не придерается....вот не нравится ему эта строка....
Миниатюры
Создание новых обьектов на форме путем клика по кнопке  
0
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
30.03.2011, 17:46  [ТС] 9
аааааааааааеееееееееее получилось!!!
Тока создает 1 строку ...повторный клик ему не почем!!=))
0
70 / 44 / 9
Регистрация: 10.08.2010
Сообщений: 140
30.03.2011, 17:57 10
Вот быстренько накидал.
Вроде все работает.
Вложения
Тип файла: zip WindowsFormsApplication1.zip (55.6 Кб, 28 просмотров)
1
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
30.03.2011, 18:03  [ТС] 11
Спасибо большое за помощь!!!
0
30.03.2011, 18:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2011, 18:03
Помогаю со студенческими работами здесь

Событие клика по кнопке
Всем привет! что то не догоняю как отловить событие клика по кнопке? вот код моей программы ...

Обработка клика по кнопке
В msdn сказано например ,для BN_CLICKED BN_CLICKED notification code ...

Обработка клика по кнопке
здравствуйте!помогите с проблемой...делаем с коллегой проект для конкурса-название &quot;Загадки&quot;. нам...

Проверка на наличие новых обьектов в базе данных и их вывод в listbox
Здравствуйте. Необходимо сделать программу, чтобы проводилась проверка в БД на хостинге MySql в...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru