Пятница, 2026-05-08

Professor VB - примеры на VB.net и C#
Меню сайта
Вход на сайт
Категории раздела
Уроки C# [9]
Главная » Статьи » C# » Уроки C#

C# - Урок 8 - Программное cоздание элементов.

C# - Урок 8 - Программное cоздание элементов.



Обработка событий созданных элементов и клавиш.

  В этой статье я расскажу о програмном создании элементов. А также про обработку событий созданных элементов и нажатий на клавишу клавиатуры.

         При создании программы, на форму помещаются различные элементы. У которых мы меняем свойства и задаем обработку взаимодействий с ними. Когда элементов не много, например пару текстовых полей и несколько кнопок - их проще разместить в ручную. Но если вам необходимо создать хотя бы десяток однотипных кнопок, с очень похожим взаимодействие, тогда намного легче автоматизировать этот процесс.

 

         Для начала мы научимся помещать на форму 1 элемент - кнопку.

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

Дополнительно я расскажу об обработке событий - нажатие на клавишу клавиатуры.

 

Программное cоздание элементов.

          Для ручного размещения элементов необходимо выбрать нужный - в панели элементов.

и перенести его на форму. По двойному клику пишем код для основного события элемента.

 

Для программного добавления делаем следующие.


           //Создаем кнопку         

           Button b = new Button();

           //Добавляем на форму кнопку

           this.Controls.Add(b);


     Таким образом мы создадим кнопку, все свойства которой будут заданы по умолчанию.

Для изменения начальных свойств добавим несколько строк.


            //Создаем кнопку   

           Button b = new Button();

           //положение

            b.Top = 50;

            b.Left = 60;

           //текст кнопки

            b.Text = "Кнопка";

            //цвет кнопки

           b.BackColor = Color.FromArgb(200, 12, 15);

           //размер

            b.Size = new System.Drawing.Size(45, 45);

            //задаем шрифт -> имя - размер - стиль

            b.Font = new Font("Arial", 14, FontStyle.Regular);

           //добавляем на форму кнопку

           this.Controls.Add(b);


  

 

  Теперь на форме находится кнопка с заданными свойствами. Полный список свойств каждого элемента можно найти так: пишем название элемента, ставим точку, и нажимаем CTRL+ПРОБЕЛ. Появится меню с полным списком доступных свойств.

   Если нам необходим другой элемент, то он добавляется также. Например текстовое поле 

TextBox txt = new TextBox();

 

Обработка событий созданного элемента

      Кроме создания элемента необходимо создать обработку событий, например для кнопки событие нажатие.

В код создание кнопки добавим следующую строку

 


           //для каждой кнопки свой обработчик событий

           b.Click += new EventHandler(b1);


    При чем событие - b1 - может иметь любое доступное имя.

 

Также добавим в код обработку события:


  void b1(object sender, EventArgs e)

            {

                MessageBox.Show("Нажатие на кнопку");

            }


Естественно, вы можете создать любое событие.

 

Полный код выглядит так:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace sozdanieKnopki
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {  
            int dx = 50;
            int dy = 50;
            int bw = 200;
            int bh = 30;

            Button b = new Button();
            
            b.Top = dy;
            b.Left = dx;

            b.Text = "Кнопка";

            b.Size = new System.Drawing.Size(bw, bh);

            //задаем шрифт -> имя - размер - стиль
            b.Font = new Font("Arial", 14, FontStyle.Regular);

            //добавляем на форму кнопку
            this.Controls.Add(b);
            
            //для каждой кнопки свой обработчик событий
            b.Click += new EventHandler(b1);
        }

        
        void b1(object sender, EventArgs e)
        {
            MessageBox.Show("Нажатие на кнопку");
        }

        
    } 


 

 Обработку события - нажатия на клавишу клавиатуры

Раз уж мы заговорили об обработки событий, сейчас я расскажу про обработку события - нажатия на клавишу клавиатуры.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            {
                InitializeComponent();

                //добавили событие
                this.KeyUp += new KeyEventHandler(OKP);


            }
        }
 
       
 //описание обработчика события
        private void OKP(object sender, KeyEventArgs e)
        {
            
            MessageBox.Show(e.KeyCode.ToString(), "Pressed");
        }

        }
    }

 


 

  Если нам необходимы только некоторые кнопки, создаем дополнительные условия, для нужных кнопок.

 

---

Смотреть видео

 

В следующем уроке мы соединим полученные знания и создадим самый простой калькулятор.

и для его создания нам потребуется массив кнопок.

По этому, к следующему разу, кроме этого урока, я рекомендую повторить массивы и циклы.

 

В начало

 

 



 

Категория: Уроки C# | Добавил: ProfessorVB (2015-11-30)
Просмотров: 5645 | Теги: урок, задать цвет, Обработка нажатий клавиш, создание кнопки, палитра цветов, Создание элементов, Обработка событий, rgb, C# | Рейтинг: 5.0/1
Всего комментариев: 0
avatar
Облако тегов
Поиск
Друзья сайта
  • www.youtube.com

  • vk.com/professorvb

  • Партнерка AIR

  • Партнерка VSP Group
  • Поделись с друзьям
    Теги
    урок C# си шарп видео hello world MenuStrip Генератор имен дроби решебник Алгебра системы уравнения Vb.net генератор уроки математика программа условия Math массив элементов видеоуроки удаление записи из xml добавление записи в xml поиск создать XML анекдот удалить из xml калькулятор НОД нок время Деструкторы тест сокращение дробей тренажер русский английский память развитие мнемоника Сборник программ переменные иностранные слова рандом professorvb смена раскладки OpenFileDialog Timer mindgames поиск в массиве цикл словарь база пароль слова Существительные sin cos комплексные числа процесс массив классы массивы многомерные Continue forEach do Break While Обработка событий rgb Создание элементов задать цвет XML база данных xml поиск значений xml создание soft proxy google tor обход блокировки черный список запрещенные сайты AntiCenz fri-gate save Open RichTextBox TopMost DateTimePicker между датами перемешивание массива Ребусы Сравнение дробей Рифмоплет скорочтение Меморина Анаграммы размер использование
    Copyright ProfessorVB © 2026