Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 09.10.2018
Сообщений: 7

Объединить две проги в одну

10.10.2018, 12:57. Показов 1725. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот еще один интересный вопрос
имеется два кода по графике
вопрос: как сделать из них одну, чтобы в начале программа просила выбрать прямоугольник или окружность и потом выполнялись следующие коды:

прямоугольник

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
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 WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                int _x = Convert.ToInt32(textBox1.Text);
                int _y = Convert.ToInt32(textBox2.Text);
                int x = pictureBox1.Width / 2 -_x/2;
                int y = pictureBox1.Height / 2-_y/2;
                Bitmap bmp = new Bitmap(1000, 1000);
                Graphics g = Graphics.FromImage(bmp);
                Color color = Color.Black;
                Rectangle rectangle = new Rectangle(x, y, _y, _x);
                g.DrawRectangle(new Pen(color), rectangle);
                pictureBox1.Image = bmp;
            }
            catch
            {
                MessageBox.Show("Вводите числа");
            }
        }
    }
}
окружность

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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
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 WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        
       
 
        public Form1()
        {
            InitializeComponent();
            pictureBox1.Image = new Bitmap(pictureBox1.Width, pictureBox1.Height);
        }
 
        
        
 
        public void button1_Click(object sender, EventArgs e)
        {
            try
            {
                int _x = Convert.ToInt32(textBox1.Text);
                int _y = Convert.ToInt32(textBox2.Text);
                int radius = Convert.ToInt32(textBox3.Text);
                using (var g = Graphics.FromImage(pictureBox1.Image))
                {
 
 
                    RasterAlgorithm.BresenhamCircle(
                       g,
                       Color.Black,
                       _x, _y, radius);
                    pictureBox1.Refresh();
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Вводите числа");
            }
        }
 
        private void textBox2_TextChanged(object sender, EventArgs e)
        {
 
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            Graphics g = Graphics.FromImage(pictureBox1.Image);
            g.Clear(Color.Gray);
        }
        }
   
        static class RasterAlgorithm
        {
 
            public static void BresenhamCircle(Graphics g, Color clr, int _x, int _y, int radius)
            {
                int x = 0, y = radius, gap = 0, delta = (2 - 2 * radius);
                while (y >= 0)
                {
                    PutPixel(g, clr, _x + x, _y + y, 255);
                    PutPixel(g, clr, _x + x, _y - y, 255);
                    PutPixel(g, clr, _x - x, _y - y, 255);
                    PutPixel(g, clr, _x - x, _y + y, 255);
                    gap = 2 * (delta + y) - 1;
                    if (delta < 0 && gap <= 0)
                    {
                        x++;
                        delta += 2 * x + 1;
                        continue;
                    }
                    if (delta > 0 && gap > 0)
                    {
                        y--;
                        delta -= 2 * y + 1;
                        continue;
                    }
                    x++;
                    delta += 2 * (x - y);
                    y--;
                }
            }
            //Метод, устанавливающий пиксел на форме с заданными цветом и прозрачностью
            private static void PutPixel(Graphics g, Color col, int x, int y, int alpha)
            {
                g.FillRectangle(new SolidBrush(Color.FromArgb(alpha, col)), x, y, 1, 1);
            }
        }
 
       
    }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.10.2018, 12:57
Ответы с готовыми решениями:

Как объединить две программы в одну?
надо что бы эти 2 программы запускались через консоль по очереди. { public static double funk(double q,double w) { ...

Объединить две проги в одну
помогите объединить 2е проги в одну, чтоб решала 2умя разныыми методами, по примеру #include&lt;iostream.h&gt; ...

Объединить две программы в одну
соедините пожалуйста программы через (case) (ну чтоб типа выберите программу 1 или 2 ) 1 программа: #include&lt;iostream.h&gt; ...

3
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
10.10.2018, 13:40
Пипец вас вообще не учили что-такое класс??? Вы вообще слышали что такое ООП?
0
0 / 0 / 0
Регистрация: 09.10.2018
Сообщений: 7
10.10.2018, 14:48  [ТС]
нам только задания дают
0
Эксперт .NET
 Аватар для novikov.ea
1857 / 1363 / 429
Регистрация: 10.06.2011
Сообщений: 2,136
10.10.2018, 16:07
Лучший ответ Сообщение было отмечено Димасик5011 как решение

Решение

Цитата Сообщение от Димасик5011 Посмотреть сообщение
как сделать из них одну, чтобы в начале программа просила выбрать прямоугольник или окружность и потом выполнялись следующие коды
Добавьте на форму ComboBox или ListBox, где будут написаны элементы "Прямоугольник" и "Окружность". При нажатии на кнопку нужно определить, если пользователь выбрал "Прямоугольник", то нужно выполнить код из метода button1_Click в первом представленном коде. Если пользователь выбрал "Окружность", то нужно выполнить код из метода button1_Click во втором представленном коде. Этого будет достаточно.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.10.2018, 16:07
Помогаю со студенческими работами здесь

Объединить две функции в одну
Здравствуйте! Я только учусь и у меня не очень пока получается. Помогите, пожалуйста, объединить две функции в одну, которая будет...

Объединить две подсети в одну
Здравствуйте! Подскажите, пожалуйста, как можно объединить две подсети в одну, например: 192.168.0.ххх и 192.168.1.ххх, так чтобы у них был...

Объединить две программы в одну.
Всем привет у меня есть две программы которые нужно объединить в одну. первая программа вводит данные и сохраняет их в Word вторая...

Объединить две таблицы в одну
Как объединить по столбцу из каждой таблицы в два столбца одной таблицы?

Объединить две программы в одну
В комментарии я кину обе программы. Знаю, просьба выглядит глупо, но это реально сложно. В первой программе я даже написал в фигурных...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru