Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 26.04.2019
Сообщений: 6

Объясните пожалуйста, что делают некоторые команды в представленном коде

27.05.2019, 16:27. Показов 613. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Это программа для передвижения нарисованного на форме круга. Написал её не я, я лишь немного изменил некоторые цифры. Я хочу использовать её в своём проекте, но для этого мне надо чётко понимать все детали. Объясните мне пожалуйста, что делают следующие команды:

- Graphics _gr;
- BufferedGraphics _bufferedGraphics;
- BufferedGraphicsContext _bufferedGraphicsContext;

- InitializeComponent();

- KeyDown += new KeyEventHandler(Form1_KeyDown);
- Paint += new PaintEventHandler(Form1_Paint);
- SizeChanged += new EventHandler(Form1_SizeChanged);

- _bufferedGraphicsContext = BufferedGraphicsManager.Current;
- InitializeGraphics();

- DrawToBuffer();

- _bufferedGraphics.Graphics.Clear(BackCol or);
- _bufferedGraphics.Graphics.DrawEllipse(_ pen, _rect);
- _bufferedGraphics.Render();

- _gr = CreateGraphics();
- _bufferedGraphics = _bufferedGraphicsContext.Allocate(_gr, ClientRectangle);


Вот сама программа:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Labirint_ALPHA
{
    public partial class Form1 : Form
    {
        Graphics _gr;
        BufferedGraphics _bufferedGraphics;
        BufferedGraphicsContext _bufferedGraphicsContext;
        Rectangle _rect = new Rectangle(0, 0, 50, 50);
        Pen _pen = new Pen(Color.Green, 3);
 
        public Form1()
        {
            InitializeComponent();
            Size = new Size(700, 600);
            StartPosition = FormStartPosition.CenterScreen;
 
            KeyDown += new KeyEventHandler(Form1_KeyDown);
            Paint += new PaintEventHandler(Form1_Paint);
            SizeChanged += new EventHandler(Form1_SizeChanged);
 
            _bufferedGraphicsContext = BufferedGraphicsManager.Current;
            InitializeGraphics();
        }
 
        void Form1_SizeChanged(object sender, EventArgs e)
        {
            InitializeGraphics();
        }
 
        void Form1_KeyDown(object sender, KeyEventArgs e)
        {
 
            if (e.KeyCode == Keys.Left)
            {
                _rect.Location = new Point(_rect.Left - 50, _rect.Top);
            }
            if (e.KeyCode == Keys.Right)
            {
                _rect.Location = new Point(_rect.Left + 50, _rect.Top);
            }
            if (e.KeyCode == Keys.Up)
            {
                _rect.Location = new Point(_rect.Left, _rect.Top - 50);
            }
            if (e.KeyCode == Keys.Down)
            {
                _rect.Location = new Point(_rect.Left, _rect.Top + 50);
            }
            Refresh();
        }
 
        void Form1_Paint(object sender, PaintEventArgs e)
        {
            DrawToBuffer();
        }
 
        private void DrawToBuffer()
        {
            _bufferedGraphics.Graphics.Clear(BackColor);
            _bufferedGraphics.Graphics.DrawEllipse(_pen, _rect);
            _bufferedGraphics.Render();
        }
 
        private void InitializeGraphics()
        {
            _gr = CreateGraphics();
            _bufferedGraphics = _bufferedGraphicsContext.Allocate(_gr, ClientRectangle);
        }
 
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.05.2019, 16:27
Ответы с готовыми решениями:

Объясните пожалуйста что делают эти программы
объясните пожалуйста что делают эти программы. Желательно закоментить сам код. Огромное спасибо всем кто поможет! using System; ...

Объясните мне пожалуйста строчку в коде
Здравствуйте! Объясните мне пожалуйста 14 строчку в коде. Когда она срабатывает? Когда в result false? public bool tryQ(int i) ...

Какие ошибки содержатся в представленном коде
Какие ошибки содержатся в представленном коде: сlass Тest { stаtіc voіd f(ref int а, оut іnt b) { a = 10 + b; } stаtic vоid...

1
 Аватар для Kotyara0live
34 / 28 / 27
Регистрация: 23.02.2016
Сообщений: 367
27.05.2019, 17:09
я думаю что тебе нужно вернуться к основам c#
так как ты не даже не знаешь что такое событие..

https://docs.microsoft.com тут найдешь все что тебя интересует
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.05.2019, 17:09
Помогаю со студенческими работами здесь

Для чего в представленном коде статический класс CurrencyExchange?
Для чего тут статический класс CurrencyExchange? Его можно сделать и не статическим же ведь и поля тоже. using System; using...

Объясните что делают эти команды
Доброй ночи. Объясните что делает здесь каждая команда/функция Вот код void show_files(const wchar_t * _path, const wchar_t *...

Что делают строчки 29-47 в коде,объясните
//--------------------------------------------------------------------------- #include<iostream.h> #include <vcl.h> #pragma hdrstop ...

Объясните пожалуйста что делают выделенные строки
#include <cstdlib> #include <iostream> using namespace std; typedef struct node { int number; node *next; ...

Объясните пожалуйста ,что делают следующие задачи:
Объясните пожалуйста ,что делают следующие задачи: 1 var a=new Array("2","48","000","99"); a.sort(Compare); var s=a; function...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru