Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/43: Рейтинг темы: голосов - 43, средняя оценка - 4.84
24 / 23 / 3
Регистрация: 21.04.2012
Сообщений: 253

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

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

Студворк — интернет-сервис помощи студентам
1. Как сделать так, чтобы можно было выводить текст в форме ?
Например, как в калькуляторе - ты нажал button и оно вывело цифру, которая была нажата. Но не в TextBox , а именно в форме.
2. У меня есть приложение-форма. Как мне создать второй шаблон формы( с другими методами и т.п.), к которому совершался переход по кнопке(воп.3). Или же это надо делать 2й проект и как-то их связывать ?
3. Как сделать так, чтобы при нажатии на кнопку , совершался переход к другой форме? То есть , я нажал кнопку(как гиперссылка на веб странице) и форма полностью поменяла вид
4. Где можно почитать про элементы управления формы(желательно не mdsn)?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.04.2012, 16:53
Ответы с готовыми решениями:

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

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

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

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

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

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

Добавлено через 2 минуты
3) Можете открыть новую форму, передав ей нужные данные, а предыдущую закрыть. Или динамически добавлять и удалять элементы управления, но это муторно. Можно использовать WPF, там это лучше реализовано
1. А есть какие-то примеры ?
2. А как это сдеоать?((
3. А как мне открыть новую форму, а старую закрыть ?
4. Окей) Сделаем ))
0
 Аватар для C17H19NO3
218 / 212 / 63
Регистрация: 17.04.2012
Сообщений: 382
26.04.2012, 17:15
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
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
26.04.2012, 17:39
Цитата Сообщение от 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
Почетный модератор
 Аватар для Памирыч
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
26.04.2012, 19:21
Tweekaz, на будущее: один вопрос - одна тема
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.04.2012, 19:21
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru