Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/25: Рейтинг темы: голосов - 25, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 04.03.2016
Сообщений: 13
.NET 4.x

Рисование круга и изменение его размера по нажатию клавиш

10.05.2016, 19:49. Показов 4602. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть коло круг, нужно сделать чтобы при нажатии клавиши коло круг в 2 раза увеличилось а когда отпустил клавишу то оно в 2 раза уменьшилось. Я создал коло круг
C#
1
2
3
4
5
6
7
8
9
10
11
        private void button1_Click(object send, EventArgs e)
        {
            Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
 
            // Create pen.
            Pen blackPen = new Pen(Color.Black, 3);
 
            // Draw ellipse to screen.
            g.DrawEllipse(blackPen, 50, 50, 50, 50);
 
        }
Но дальше я не знаю как делать
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.05.2016, 19:49
Ответы с готовыми решениями:

Циклическое изменение размера формы по нажатию на button
Добрый день, помогите пожалуйста как можно изменить размер формы в 2 параметра при нажатии на одну и ту же кнопку. То есть я нажал на...

Рисование фигур по нажатию клавиш.
Написать программу, чтобы при нажатии клавиши "р" рисовала бы круг, при нажатии клавиши "Ь" рисовала бы прямоугольник, при...

Вычисление длины окружности, площади круга, а также изменение размера фигуры
1. Разработайте приложение, которое для введенного значения радиуса окружности вычисляет длину окружности, площадь круга, а также меняет...

4
10.05.2016, 20:44
 Комментарий модератора 
Цитата Сообщение от StudentNeuch Посмотреть сообщение
коло
Если вы хотите чтобы вас понимали следует писать на русском.
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
11.05.2016, 09:21
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
int w = 50;
int h = 50;
...
 
        private void button1_MouseDown(object sender, MouseEventArgs e)
        {
            w *= 2;
            h *= 2;
            RefreshCr();
        }
 
        private void button1_MouseUp(object sender, MouseEventArgs e)
        {
            w /= 2;
            h /= 2;
            RefreshCr();
        }
 
...
void RefreshCr()
{
...
g.DrawEllipse(blackPen, 50, 50, w, h);
...
}
1
0 / 0 / 0
Регистрация: 04.03.2016
Сообщений: 13
11.05.2016, 15:10  [ТС]
Да, но когда кнопку отжимаешь то круг не пропадает большой, это нужно в

C#
1
2
3
4
5
6
private void button1_MouseUp(object sender, MouseEventArgs e)
        {
            w /= 2;
            h /= 2;
            RefreshCr();
        }
добавить e.Desponse();???
0
0 / 0 / 0
Регистрация: 04.03.2016
Сообщений: 13
12.05.2016, 18:55  [ТС]
Вот наконец то сделал как мне надо было
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
using System;
using System.Drawing;
using System.Windows.Forms;
 
namespace _2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        void MDown(object sender, EventArgs e)
        {
            Pen myPen = new Pen(Color.Black, 2);
            Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
            g.DrawEllipse(myPen, 50, 50, 50, 50);
 
        }
 
        public void MouseButtonIsUp(object sender, MouseEventArgs e)
        {
            Pen myPen = new Pen(Color.Black, 2);
            Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
            g.Clear(DefaultBackColor);
            g.DrawEllipse(myPen, 50, 50, 100, 100);
          
        }
 
        private void button1_MouseUp(object sender, MouseEventArgs e)
        {
            Pen myPen = new Pen(Color.Black, 2);
            Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
            g.Clear(DefaultBackColor);
            g.DrawEllipse(myPen, 50, 50, 50, 50);
           
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.05.2016, 18:55
Помогаю со студенческими работами здесь

Изменение размера блока в зависимости от его размера
Ребят в JS я вообще новичок, и при создании блога вышел нюанс, что без js не обойтись. Есть блок, внутри которого текст ( текст будет...

Изменение размера окна по нажатию на кнопку, а также поиск по компу
Суть проблемы такова: пилю поиск и мне надо по нажатию на кнопку расширять окно программы вниз и отображать результаты. Пробовал так: ...

Ввод размера массива и создание его по нажатию кнопки
Добрый день. Столкнулся с такой проблемкой: на форме находятся TextBox и Button; в TextBox вводится размер массива. После первого нажатия...

Изменение размера элемента с сохранением его пропорций
Помогите решить задачку. Есть Panel. На нем отображается видео. Я хочу сделать так, чтобы у видео сохранялось соотношение сторон при...

Изменение размера виджета при скрытии его элементов
Есть виджет, элементы которого скомпонованы по вертикали. Виджет используется как элемент QListWidget. Как сделать, чтобы при...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки 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. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера 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