0 / 1 / 0
Регистрация: 25.02.2012
Сообщений: 17
1

Создание и заливка сетки в PictureBox

19.10.2014, 12:12. Показов 4611. Ответов 4
Метки нет (Все метки)

Доброго времени суток.
Подскажите, каким образом это можно сделать, нужно нарисовать сетку в PictureBox, чтобы потом при клике мышкой на нужную ячейку она(ячейка) меняла цвет.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.10.2014, 12:12
Ответы с готовыми решениями:

Заливка формы и вывод сетки
Добрый день. Разрабатываю игру "Змейка" и столкнулся с такой проблемой: хочу залить форму цветом и...

Заливка в picturebox
Можете подсказать как можно сделать заливку некоторой области до её границ.

Заливка прямоугольника в pictureBox текстурой
Здравствуйте, я смог реализовать заливку прямоугольника текстурой, но заливка производится путем...

Заливка цветом загруженного изображения в PictureBox
Возникла какая-то несуразица. Существует вполне работоспособный и проверенный алгоритм заливки...

4
76 / 77 / 40
Регистрация: 03.06.2014
Сообщений: 462
19.10.2014, 14:22 2
Лучший ответ Сообщение было отмечено gggtg как решение

Решение

Просто интересно было сделать...
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
       public Form1()
        {
            InitializeComponent();
 
            pictureBox1.Image = (Image)new Bitmap(pictureBox1.Width, pictureBox1.Height);
            Graphics g = Graphics.FromImage(pictureBox1.Image);
            Pen p = new Pen(Color.Red);
            for (int i = 0; i < 9; i++) {
                g.DrawLine(p, new Point((pictureBox1.Width / 10 * (i + 1)), 0), new Point((pictureBox1.Width / 10 * (i + 1)), pictureBox1.Height));
                g.DrawLine(p, new Point(0, (pictureBox1.Height / 10 * (i + 1))), new Point(pictureBox1.Width, (pictureBox1.Height / 10 * (i + 1)) )); }
            
 
        }
 
       private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
        {
            int X = pictureBox1.Width / 10;
            int Y = pictureBox1.Height / 10;
 
            for (int i = 1; i < 10; i++)
            {
                if (e.X <= (X * i))
                {
                    for (int i1 = 1; i1 < 10; i1++)
                    {
                        if (e.Y <= (Y * i1))
                        {
                            Graphics a = Graphics.FromImage(pictureBox1.Image);
                            a.FillRectangle(Brushes.Black, (X * (i - 1)), (Y * (i1 - 1)), X, Y);
                            this.Refresh();
 
                            //MessageBox.Show((X * (i - 1)).ToString() + ":" + (X * i).ToString() + " - " + (Y * (i1 - 1)).ToString() + ":" + (Y * i1).ToString());
                            break;
                        }
                    }
                    break;
                }
            }
        }
2
0 / 1 / 0
Регистрация: 25.02.2012
Сообщений: 17
19.10.2014, 20:25  [ТС] 3
asql, круто! спасибо!
можешь подсказать что я не так мог сделать, твой код компилируется, сетка появляется но при клике мышки ничего не происходит
0
76 / 77 / 40
Регистрация: 03.06.2014
Сообщений: 462
19.10.2014, 20:29 4
pictureBox1_MouseClick поставил на pictureBox1?
0
0 / 1 / 0
Регистрация: 25.02.2012
Сообщений: 17
20.10.2014, 15:10  [ТС] 5
asql, все заработало, огромное спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2014, 15:10

Закрашивание ячеек сетки в PictureBox с возможностью смены цвета по клику
Здравствуйте, есть следующая задача: - создать сетку; - обеспечить в ней смену цвета ячейки по...

Функция отрисовки сетки в элементе picturebox не отрабатывается при загрузке формы (Form)
Доброго времени суток. Возникла следующая ситуация: есть функция отрисовки линий (например,...

Программное создание PictureBox с проверкой, нет ли на его месте другого PictureBox
Здравствуйте! Нужно чтобы при нажатии кнопки создавался PictureBox с определёнными свойствами...

Создание сетки
Как создать массив квадратов на андроиде (возможно есть какая-то замена JLabel из JAVA Swing),...


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

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

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