Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2009, 02:16   #1
Natok
Пользователь
 
Аватар для Natok
 
Регистрация: 17.05.2009
Сообщений: 85
Вопрос как разместить рисунок в pictureBox

вот ето рисунок просто на форме:

Код:
            Graphics g = pe.Graphics;
            Pen penCurrent = new Pen(Color.Red);
            Rectangle Rect = new Rectangle(35, 80, 300, 300);
            g.DrawRectangle(penCurrent, Rect);

            //drawing lines
            for (int i = 1; i < 30; i++)
            {
                g.DrawLine(penCurrent, 35 + i * 10, 80, 35 + i * 10, 380);
                g.DrawLine(penCurrent, 35, 80 + i * 10, 335, 80 + i * 10);
            }
а как разместить рисунок в pictureBox?

Последний раз редактировалось Sazary; 27.05.2009 в 02:21.
Natok вне форума Ответить с цитированием
Старый 27.05.2009, 02:24   #2
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Код:
Graphics g = pictureBox1.CreateGraphics();
            Pen penCurrent = new Pen(Color.Red);
            Rectangle Rect = new Rectangle(35, 80, 300, 300);
            g.DrawRectangle(penCurrent, Rect);

            //drawing lines
            for (int i = 1; i < 30; i++)
            {
                g.DrawLine(penCurrent, 35 + i * 10, 80, 35 + i * 10, 380);
                g.DrawLine(penCurrent, 35, 80 + i * 10, 335, 80 + i * 10);
            }
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 27.05.2009, 02:43   #3
Natok
Пользователь
 
Аватар для Natok
 
Регистрация: 17.05.2009
Сообщений: 85
Вопрос

SunKnight , спасибо большое за помощь!!!! ))))

мне, в принципе, без разницы - рисовать кнопкой или сразу (кнопкой даже лучше), но все-таки: почему первый вариант работает, а второй нет?

первый вариант


Код:
private void button1_Click(object sender, EventArgs e)
        {
            Graphics g = pictureBox1.CreateGraphics();
            Pen penCurrent = new Pen(Color.Red);
            Rectangle Rect = new Rectangle(35, 80, 300, 300);
            g.DrawRectangle(penCurrent, Rect);

            //drawing lines
            for (int i = 1; i < 30; i++)
            {
                g.DrawLine(penCurrent, 35 + i * 10, 80, 35 + i * 10, 380);
                g.DrawLine(penCurrent, 35, 80 + i * 10, 335, 80 + i * 10);
            }

        }

Второй вариант


Код:
private void Form1_Load(object sender, EventArgs e)
        {
            Graphics g = pictureBox1.CreateGraphics();
            Pen penCurrent = new Pen(Color.Red);
            Rectangle Rect = new Rectangle(35, 80, 300, 300);
            g.DrawRectangle(penCurrent, Rect);

            //drawing lines
            for (int i = 1; i < 30; i++)
            {
                g.DrawLine(penCurrent, 35 + i * 10, 80, 35 + i * 10, 380);
                g.DrawLine(penCurrent, 35, 80 + i * 10, 335, 80 + i * 10);
            }
            

        }

Последний раз редактировалось Natok; 27.05.2009 в 02:47.
Natok вне форума Ответить с цитированием
Старый 26.12.2009, 01:30   #4
Casper-SC
Форумчанин
 
Регистрация: 04.07.2007
Сообщений: 549
По умолчанию

Потому, что событие ты не то выбрал, в событии Paint будет рисоваться таким способом.

А так вроде можно:
Код:
private void pictureBox2_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            Pen penCurrent = new Pen(Color.Red);
            g.DrawString("Pen penCurrent = new Pen(Color.Red);",
            new Font("Arial", 10), System.Drawing.Brushes.Blue, new Point(30, 30));
             for (int i = 1; i < 30; i++)
            {
                g.DrawLine(penCurrent, 35 + i * 10, 80, 35 + i * 10, 380);
                g.DrawLine(penCurrent, 35, 80 + i * 10, 335, 80 + i * 10);
            }
        }


        private PictureBox pictureBox2 = new PictureBox();

        private void Form1_Load(object sender, EventArgs e)
        {
          
            {   
                pictureBox2.Dock = DockStyle.Fill;
                pictureBox2.BackColor = Color.White;
                pictureBox2.Paint += new System.Windows.Forms.PaintEventHandler(this.pictureBox2_Paint);
                this.Controls.Add(pictureBox2);
             }        
         }

Последний раз редактировалось Casper-SC; 26.12.2009 в 01:48.
Casper-SC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как разместить картинку в фон на сайт? ILLUSION Помощь студентам 8 12.05.2009 22:04
Как разместить Alpha skin's в ресурсах программы dolphin705 Компоненты Delphi 4 22.03.2009 21:00
PictureBox ne11son Общие вопросы .NET 0 14.03.2009 12:29
как разместить в ячейку таблицы, то что введено в edit? Ensoph Общие вопросы Delphi 9 17.09.2007 22:58