24 / 23 / 3
Регистрация: 21.04.2012
Сообщений: 253
1

Как сделать так, чтобы можно было выводить текст в форме

26.04.2012, 16:53. Показов 6549. Ответов 6
Метки нет (Все метки)

1. Как сделать так, чтобы можно было выводить текст в форме ?
Например, как в калькуляторе - ты нажал button и оно вывело цифру, которая была нажата. Но не в TextBox , а именно в форме.
2. У меня есть приложение-форма. Как мне создать второй шаблон формы( с другими методами и т.п.), к которому совершался переход по кнопке(воп.3). Или же это надо делать 2й проект и как-то их связывать ?
3. Как сделать так, чтобы при нажатии на кнопку , совершался переход к другой форме? То есть , я нажал кнопку(как гиперссылка на веб странице) и форма полностью поменяла вид
4. Где можно почитать про элементы управления формы(желательно не mdsn)?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2012, 16:53
Ответы с готовыми решениями:

Как сделать так, чтобы у картинки в формате .png не было белого фона на форме
Как сделать так, чтобы у картинки в формате .png не было белого фона на форме(картинка изначально...

Как сделать так чтобы не надо было создавать заново компоненты на второй форме
Имеется 2 формы. На второй вот такое. -OleDbConnection -OleDbDataAdapter -DataSet...

Как сделать так чтобы можно было ввести только дату?
Вот основная форма: Вот форма при нажатии на кнопку "Добавить": Так вот мне нужно сделать так...

Как сделать так, чтобы можно было закрыть только текущую Форму?
Доброго времени суток. Я использую Windows Forms и язык C# для написания не большого проекта....

6
Life Builder
532 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,753
26.04.2012, 17:01 2
Цитата Сообщение от Tweekaz Посмотреть сообщение
2. У меня есть приложение-форма. Как мне создать второй шаблон формы( с другими методами и т.п.), к которому совершался переход по кнопке(воп.3). Или же это надо делать 2й проект и как-то их связывать ?
C#
1
2
Form2 f2 = new Form2();
f2.Show();//f2.ShowDialog();
0
Администратор
Эксперт .NET
9380 / 4664 / 757
Регистрация: 17.04.2012
Сообщений: 9,512
Записей в блоге: 14
26.04.2012, 17:04 3
1) Прямо в форме нельзя, можете использовать для этого Label
2) Надо создать в текущем проекте ещё одну форму; к ней можно обращаться без импортов прямо по имени класса из первой формы
4) Книги Чарльза Петцольда по программированию GUI на Windows считаются одними из лучших. Погуглите.

Добавлено через 2 минуты
3) Можете открыть новую форму, передав ей нужные данные, а предыдущую закрыть. Или динамически добавлять и удалять элементы управления, но это муторно. Можно использовать WPF, там это лучше реализовано
1
24 / 23 / 3
Регистрация: 21.04.2012
Сообщений: 253
26.04.2012, 17:11  [ТС] 4
sk007, а куда это вводить?(

Цитата Сообщение от tezaurismosis Посмотреть сообщение
1) Прямо в форме нельзя, можете использовать для этого Label
2) Надо создать в текущем проекте ещё одну форму; к ней можно обращаться без импортов прямо по имени класса из первой формы
4) Книги Чарльза Петцольда по программированию GUI на Windows считаются одними из лучших. Погуглите.

Добавлено через 2 минуты
3) Можете открыть новую форму, передав ей нужные данные, а предыдущую закрыть. Или динамически добавлять и удалять элементы управления, но это муторно. Можно использовать WPF, там это лучше реализовано
1. А есть какие-то примеры ?
2. А как это сдеоать?((
3. А как мне открыть новую форму, а старую закрыть ?
4. Окей) Сделаем ))
0
217 / 211 / 63
Регистрация: 17.04.2012
Сообщений: 382
26.04.2012, 17:15 5
1. Выводить просто на форму нельзя. Нужно использвать какие-то средства. На пример Label. Текст будет отображатся как буд-то на форме.

2. Нужно сожать вторую форму. в меню Solution Explorer нажимаешь правой клавишей по названию проекта Add -> New Items -> Wondows Form.

3. Вызов формы. в обработчике баттона пишешь

C#
1
2
3
//дочерняя форма
Form2 frm2 = new Form2();
frm2.ShowDialog().
На щет замены формы одну на другую не знаю. Никогда такого не выдел ни в примерах ни в реальной жизни.

C#
1
Application.Run(new Form1());
это единоразовое действие. Может профессионали знаю как это обойти.

4. Я первую книгу читал библию С#, потом Сеппа Д. Microsoft ADO .NET, а потом много остальных, частями. Вообще нужно прочесть хотя бы одну книгу полностью чтоб было хоть что-то понятно.
0
Администратор
Эксперт .NET
9380 / 4664 / 757
Регистрация: 17.04.2012
Сообщений: 9,512
Записей в блоге: 14
26.04.2012, 17:39 6
Цитата Сообщение от Tweekaz Посмотреть сообщение
1. А есть какие-то примеры ?
2. А как это сдеоать?((
3. А как мне открыть новую форму, а старую закрыть ?
1) Вам нужно добавить на форму элемент управления Label. Можете воспользоваться конструктором форм в Visual Studio - перетащите из панели инструментов Label на форму. Label по-умолчанию не имеет внешних ориентиров (я имею введу, визуально) и выглядит, как будто текст написан прямо на форме.

Добавлено через 2 минуты
Цитата Сообщение от C17H19NO3 Посмотреть сообщение
Сеппа Д. Microsoft ADO .NET
В книге по ADO .NET был учебный материал по Windows Forms?

Добавлено через 19 минут
Пробовал заменить все контролы на форме вот так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
            // здесь будут хранится контролы для следующей страницы
            Control.ControlCollection nextCollection = new Control.ControlCollection(this);
            // вот эти контролы
            Button btn1 = new Button();
            btn1.Text = "Button 1";
            btn1.Location = new Point(10, 10);
            Label lbl1 = new Label();
            lbl1.Text = "Label";
            lbl1.Location = new Point(50, 50);
            nextCollection.Add(btn1);
            nextCollection.Add(lbl1);
            // для добавления в this.Controls необходим массив
            Control[] nextControls = new Control[nextCollection.Count];
            nextCollection.CopyTo(nextControls, 0);
            // сохраняем предыдущую коллекцию контролов
            Control.ControlCollection firstCollection = this.Controls;
            // очищаем форму
            this.Controls.Clear();
            // добавляем новую коллекцию на форму
            this.Controls.AddRange(nextControls);
Но на последней строке получил ошибку ""child" не является дочерним элементом управления этого родительского элемента." Может кто увидит ошибку?
0
Почетный модератор
21368 / 9102 / 1082
Регистрация: 11.04.2010
Сообщений: 11,014
26.04.2012, 19:21 7
Tweekaz, на будущее: один вопрос - одна тема
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.04.2012, 19:21
Помогаю со студенческими работами здесь

Как сделать так чтобы можно было кликать по кнопке только 1 раз в день?
Хаи. Описал проблему уже в заголовке. Мне нужно чтобы button1 был активен, после нажатия на нее...

Как сделать так, чтобы после нажатия кнопки можно было щелкнуть мышкой в PictureBox и там бы нарисовался круг?
В общем, допустим, что есть Button1 - добавить круг, PictureBoх, в котором этот круг рисуется и...

Можно ли сделать, чтобы в программе можно было в компоненте listview1 писать в ячейки текст
Можно ли сделать, чтобы в программе можно было в компоненте listview1 писать\изменять в ячейках...

Сделать так, чтобы на скрине можно было выделять область при помощи курсора и сохранять ее
Здравствуйте. Хочу написать скриншотер. опыта особого нет, из за этого то и все траблы. Хочу...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru