Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 1
Регистрация: 19.10.2014
Сообщений: 40
1

Как сделать так, чтобы после нажатия кнопки можно было щелкнуть мышкой в PictureBox и там бы нарисовался круг?

13.02.2015, 16:16. Просмотров 1274. Ответов 2
Метки нет (Все метки)


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

Как сделать так, чтобы после нажатия кнопки (Добавить круг) можно было щелкнуть мышкой в поле PictureBox'a и там бы нарисовался круг?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.02.2015, 16:16
Ответы с готовыми решениями:

Сделать так, чтобы после ввода текста в Edit вместо нажатия кнопки "Да" можно было нажимать клавишу "Enter"
Раньше при помощи нехитрого кода (if (key = #13) then ...) у меня получалось сделать так, чтобы...

Как можно сделать так, чтобы в PictureBox, можно было работать по экранным координатам(т.е. по пикселям)?
Как можно сделать так, чтобы в PictureBox, можно было работать по экранным координатам(т.е. по...

Можно ли сделать так, чтобы Panel можно было бы передвигать по форме мышкой?
Можно ли сделать так, чтобы Panel можно было бы передвигать по форме мышкой?

Как сделать так, чтобы значение поля сохранялось после нажатия кнопки
Всем привет! Как в РНР сделать так чтобы значение поля сохранялось после нажатые кнопки? <form...

2
Модератор
880 / 789 / 326
Регистрация: 03.02.2015
Сообщений: 5,104
Записей в блоге: 9
13.02.2015, 17:03 2
Лучший ответ Сообщение было отмечено kalyashov как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// клик по кнопки
        private void button_add_crc_Click(object sender, EventArgs e)
        {
            // выставим флаг кнопки
            crc_OK = true;
        }
 
 
 
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            // проверка флага нажатия
            if (!crc_OK)
                return;
 
            // 
            Bitmap tmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
            System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(tmp);
            g.DrawEllipse(new Pen(Color.Black, 3), e.X, e.Y, 50, 50);
            pictureBox1.Image = tmp;
        }
Добавлено через 2 минуты
ещё навсякий можно в конце вызвать g.Dispose();
1
0 / 0 / 1
Регистрация: 19.10.2014
Сообщений: 40
13.02.2015, 17:38  [ТС] 3
Sanya_sa, спасибо, всё понял, но не получается сделать так, чтобы круг оставался,т.е. если еще раз щелкнуть мышкой, то нарисованный круг не сохраняется, а просто рисуется новый.

Добавлено через 15 минут
Sanya_sa, всё получилось:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
     private void button1_Click(object sender, EventArgs e)
        {
            crc_OK = true;
        }
 
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            // проверка флага нажатия
            if (!crc_OK)
                return;
 
            if (step == 10)
                return;
           
            var pic = (PictureBox)sender;
            if (pic.Image == null) { pic.Image = new Bitmap(pic.Width, pic.Height); }
            var bmp = new Bitmap(pic.Image);
            var g = Graphics.FromImage(bmp);
            g.DrawEllipse(Pens.Black, e.X-25, e.Y-25, 20, 20);
            pic.Image = bmp;
        }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.02.2015, 17:38

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

Как сделать так, чтобы текст из Edit после нажатия кнопки попадал в RichEdit?
Привет ребята! Подскажите, как сделать так, чтобы текст из Edit после нажатия кнопки попадал в...

Можно сделать так чтобы вызванное программой окно SendMessage было скрытым и ещё автоматически ок там нажималось?
Наверное надо узнать hwnd этого SendMessage... соре оч давно не кодил, всё позабыл. Подскажите плз...

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

Нужно сделать так, чтобы после нажатия правой кнопки мыши, кот снова начинал идти
В программе кот идет с края до края, все снова и снова... Нажатием правой кнопки он идет вправо,...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.