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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2014, 15:07   #21
cdman
Пользователь
 
Регистрация: 23.05.2009
Сообщений: 32
По умолчанию

Да и вам не заметно, что вы 4 дня что-то подсказываете, а это ни к чему не приводит в итоге ? Тратите своё, а что главное, моё время)
cdman вне форума Ответить с цитированием
Старый 07.03.2014, 15:41   #22
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от cdman Посмотреть сообщение
Да и вам не заметно, что вы 4 дня что-то подсказываете, а это ни к чему не приводит в итоге ? Тратите своё, а что главное, моё время)
потому что сага об xyz во плоти.
сначало идет одно, на это отвечаем, предложив варианты, вы делаете иное, это не выходит, пытаются подсказать и это, дав ссылку на похожый код, вы не довольны.

определитесь с задачей для начала, что именно вам нужно?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.03.2014, 15:51   #23
cdman
Пользователь
 
Регистрация: 23.05.2009
Сообщений: 32
По умолчанию

Результата нет, не то чтобы я был недоволен, скорее разочарован. Я задал конкретный вопрос, а Ваш ответ не даёт понимания. А вы ещё спрашиваете "определитесь с задачей для начала, что именно вам нужно? " - это что ? Я плохо описал задачу ?

Последний раз редактировалось cdman; 07.03.2014 в 15:56.
cdman вне форума Ответить с цитированием
Старый 07.03.2014, 15:57   #24
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

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

потому что ответ дан, но вы утверждаете что не то это, потому и возникает вопрос и что вам надо.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.03.2014, 16:14   #25
cdman
Пользователь
 
Регистрация: 23.05.2009
Сообщений: 32
По умолчанию

Ответ Твой: Разбирайся сам.
cdman вне форума Ответить с цитированием
Старый 07.03.2014, 16:43   #26
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от cdman Посмотреть сообщение
Ответ Твой: Разбирайся сам.
все ведь дано, не готовенькое да, но этого достаточно, если хоть чучуть вдуматься.
Код:
            // Впечатываем newImage в Buf
            Buf.DrawImage(Image, ulCorner); // Тут не знаю как сделать.
по этому есть в ссылке, что вам нужен Graphics из него.
идем по ссылке, и что же мы видим,
Код:
G = Graphics.FromImage(SecondBuf);
оно ведь.
и буфер нужно сформировать лишь единожды.

поясню еще раз код по ссылке, там создается буфер, все рисует на нем, и потом он выводится.
тот код можно изменить чтоб буфер менялся вне Paint события, просто рисовать на буфере в другом месте, оставив вывод буфера, что выходит примерно так:
Код:
namespace graphic3
{
    public partial class Form1 : Form
    {
        Image SecondBuf;
        Graphics G;
        SolidBrush redBrush = new SolidBrush(Color.Red);
        SolidBrush blueBrush = new SolidBrush(Color.Blue);
        public Form1()
        {

            InitializeComponent();
            SecondBuf = new Bitmap(this.Width, this.Height);//создали буфер
            G = Graphics.FromImage(SecondBuf);//создали графикс для вывода.

            //рисуем фон и 2 круга в буфере
            G.FillRectangle(redBrush, 0, 0, this.Width, this.Height);
            G.FillEllipse(blueBrush, 300, 50, 100, 100);
            G.FillEllipse(blueBrush, 50, 250, 100, 100);
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            e.Graphics.DrawImage(SecondBuf,0,0);//выводим буфер на экран.
        }
    }
}
вот и все.
и кстати не надо в Paint событии грузить из файла, достаточно один раз сохранить.

что-то непонятно?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.03.2014, 17:50   #27
cdman
Пользователь
 
Регистрация: 23.05.2009
Сообщений: 32
По умолчанию

Код:
            // Создаём буфер
            Bitmap Buf = new Bitmap(500, 500);

            // Создаём Graphics
            G = Graphics.FromImage(Buf);

            // Это изображение нужно впечатать по координатам в Buf
            Image Image = Image.FromFile(@"c:\Projects\PointAndFigure\O_16.bmp");

            // Создаём координаты
            Point ulCorner = new Point(100, 100);

            // Впечатываем newImage в Buf
            G.DrawImage(Image, ulCorner);

            // Выводим Buf на экран (Это в секции Paint)
            e.Graphics.DrawImage(Buf, 0, 0);
Вот это заработало, спасибо! Спасибо Пепел за терпение

Последний раз редактировалось cdman; 07.03.2014 в 17:57.
cdman вне форума Ответить с цитированием
Старый 07.03.2014, 19:17   #28
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от cdman Посмотреть сообщение
Код:
            // Создаём буфер
            Bitmap Buf = new Bitmap(500, 500);

            // Создаём Graphics
            G = Graphics.FromImage(Buf);

            // Это изображение нужно впечатать по координатам в Buf
            Image Image = Image.FromFile(@"c:\Projects\PointAndFigure\O_16.bmp");

            // Создаём координаты
            Point ulCorner = new Point(100, 100);

            // Впечатываем newImage в Buf
            G.DrawImage(Image, ulCorner);

            // Выводим Buf на экран (Это в секции Paint)
            e.Graphics.DrawImage(Buf, 0, 0);
Вот это заработало, спасибо! Спасибо Пепел за терпение
надеюсь это не в паинте?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.03.2014, 19:56   #29
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а то гдеж чет кается там графиксов больш чем надо
eval вне форума Ответить с цитированием
Старый 11.03.2014, 18:33   #30
cdman
Пользователь
 
Регистрация: 23.05.2009
Сообщений: 32
По умолчанию

Всё, я его забил в метод класса!
cdman вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возврат вектора методом шаблонного класса Dmitry333 Общие вопросы C/C++ 6 15.05.2013 11:22
Возврат вектора методом шаблонного класса Dmitry333 Общие вопросы C/C++ 3 14.05.2013 22:26
Инициализация матрицы методом класса Jugger Общие вопросы C/C++ 4 20.10.2011 20:43
Каким образом методом класса... FarmHend Помощь студентам 1 20.09.2011 07:03
Проблема с методом класса Ivan_32 Общие вопросы C/C++ 4 27.03.2009 10:43