Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение нарисованного рисунка 
:(
    Опции темы
Xonxt
Дата 17.3.2007, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Знаю, такие темы уже были. Я их смотрел, но они мне или не подошли, или не работают. Так что спрошу еще раз.

Итак. У меня есть, к примеру, объект Panel. На этой панели я с помощью мыши что-нибудь рисую. Теперь я хочу сохранить нарисованное в файл. Как это сделать?

Мне удалось сделать нечто подобное на основе pictureBox. Я сделал CreateGraphics() на pictureBox'e, а затем нарисованное перекидывал на Bitmap, а затем присваивал picture.Box.Image = Bitmap,или что-то в этом роде. Я и сам не понял  smile . Вроде бы работало, но на "холсте" оставалось только то, что я нарисован в последний момент, т.е. от всего нарисованного рисунка оставался либо один пиксель, либо небольшой штрих (если я в этот момент ОЧЕНЬ быстро двигал мышью  smile ).


В общем, помогите советом, либо, как сделать подобное на основе Panel, либо PictureBox.
PM MAIL ICQ Skype   Вверх
mr.DUDA
Дата 17.3.2007, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Обрабатывай событие Paint, в нём создавай новый Bitmap и новый Graphics из этого битмапа, рисуй всё в этот графикс, в конце обработчика диспозь графикс и сохраняй битмап в файл. Затем смело выводи битмап в графикс из PaintEventArgs.Graphics методом DrawImage smile


--------------------
user posted image
PM MAIL WWW   Вверх
Xonxt
Дата 18.3.2007, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Ммм... примерно понятно... спасибо.
Но, всё-таки, не помешал бы простенький пример в виде листинга. smile
PM MAIL ICQ Skype   Вверх
Idsa
Дата 18.3.2007, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Вот попытка материализовать мысли mr.DUDA smile :
Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Text;
using System.Windows.Forms;

namespace TestWinApp
{
  public partial class Form1 : Form
  {
    int xDown, yDown;
    Bitmap picture;

    public Form1()
    {
      InitializeComponent();
      picture = new Bitmap(drawPanel.Width, drawPanel.Height);
    }

    private void DrawPanel_MouseDown(object sender, MouseEventArgs e)
    {
      xDown = e.X;
      yDown = e.Y;
    }

    private void DrawPanel_MouseUp(object sender, MouseEventArgs e)
    {
      Graphics g = Graphics.FromImage(picture);
      g.DrawLine(Pens.Aqua, new Point(xDown, yDown), new Point(e.X, e.Y));
      g.Dispose();
      drawPanel.Invalidate();
    }

    private void drawPanel_Paint(object sender, PaintEventArgs e)
    {
      e.Graphics.DrawImage(picture, new Point(0, 0));
    }

    private void button1_Click(object sender, EventArgs e)
    {
      picture.Save("fileName.bmp");
    }
  }
}

На форме: панель drawPanel и кнопка button1.

В программе реализован простенький (очень простенький smile ) графический редактор: зажимаешь левую кнопку мыши, тянешь мышь, отпускаешь кнопку - вуаля, появилась линия. Ну а чтобы сохранить все это "творчество", нажимаем кнопочку и ищем в рабочей директории файл filename.bmp.

P. S. Проект в аттаче.

Это сообщение отредактировал(а) Idsa - 18.3.2007, 01:56

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  TestWinApp.rar 31,12 Kb


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Xonxt
Дата 18.3.2007, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Спасибо.
Вот что получилось у меня:

Код

using System;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Resources;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

namespace graph02
{
    public class Form1 : System.Windows.Forms.Form
    {
        private System.ComponentModel.Container components = null;
        private Bitmap pic;
        private Point lastpos;
        private System.Windows.Forms.Panel panel1;
        private Pen mypen;

        public Form1()
        {
            InitializeComponent();
            pic = new Bitmap(panel1.Width, panel1.Height);
        }

        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if (components != null) 
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        static void Main() 
        {
            Application.Run(new Form1());
        }

        private void Form1_Load(object sender, System.EventArgs e)
        {
            this.mypen = new Pen(Color.Black, 5);
            this.mypen.EndCap = LineCap.Round;
            this.mypen.StartCap = LineCap.Round;
        }

        private void panel1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
        {
             e.Graphics.DrawImage(pic, new Point(0, 0));
        }

        private void panel1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            pic.Save("img.bmp");
        }

        private void panel1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            Graphics G = Graphics.FromImage(pic);
                        
            if(e.Button == MouseButtons.Left)
            {                
                G.DrawLine(Pens.Black, lastpos.X, lastpos.Y, e.X, e.Y);    
                lastpos = new Point(e.X, e.Y);
                G.Dispose();
                panel1.Invalidate();
            }            
        }

        private void panel1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            lastpos.X = e.X;
            lastpos.Y = e.Y;
        }
    }
}

Единственная проблема: при самом рисовании из-за Invalidate() изображение дрожит. Сам посмотри. Куда посоветуешь переместить Invalidate()? А то если я помещу его в MouseUp, то нарисованную линию видно только когда отпустишь мышь, а это не есть хорошо!

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  graph02.rar 35,37 Kb
PM MAIL ICQ Skype   Вверх
Idsa
Дата 18.3.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



"Дрожание" изображения - извечная проблема. Попробуй поставить свойство DoubleBuffered для формы в true. Если поможет, - хорошо, если же нет... нужно думать над оптимизацией.

Кстати, насчет оптимизации... по-моему не стоит сохранять изображение в MouseUp: накладненько однако smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Xonxt
Дата 18.3.2007, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Гм.. у формы нет такого параметра DoubleBuffered.. Можно поподробнее?

Это сообщение отредактировал(а) Xonxt - 18.3.2007, 15:31
PM MAIL ICQ Skype   Вверх
Idsa
Дата 18.3.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Есть! Посмотри в дизайнере в окне свойств, или напиши в конструкторе формы this.DoubleBuffered, или в MSDN глянь. 


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
agl
Дата 18.3.2007, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



У тебя наверно vs 2005, в 2003 ничего подобного вроде нету. 
PM   Вверх
Idsa
Дата 18.3.2007, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(agl @  18.3.2007,  17:17 Найти цитируемый пост)
У тебя наверно vs 2005, в 2003 ничего подобного вроде нету. 

Я не пойму, почему некоторые не переходят на 2005-ю студию?! Все никак денег (80 рублей smile) не накопите?!

А вообще, конечно, странно: я DoubleBuffered юзал еще в Delphi 7.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
agl
Дата 18.3.2007, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



Дык, у кого привычка, у кого в заведениях стоят ещё старые студии. А при чем тут 80 рублей? Это цена пиратского диска smile, так я вообще не с России, ваши цены для меня не актуальны  smile . Интересно, а разница между ними очень большая? Тяжёлый переход то?
PM   Вверх
Idsa
Дата 18.3.2007, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(agl @  18.3.2007,  18:20 Найти цитируемый пост)
Это цена пиратского диска

Тссс... smile

Цитата(agl @  18.3.2007,  18:20 Найти цитируемый пост)
Интересно, а разница между ними очень большая? Тяжёлый переход то?

Переход на 2005 студию может подразумевать переход на фреймворк 2.0 или 3.0. Об особенностях как второго, так и третьего фреймворка написано немало статей. От себя могу сказать, что усовершенствования 2.0 принципиальны, а вот переход на 3.0 ИМХО можно отложить до 3.5 (и студии 2007).

P. S. До меня только что дошло, что мы оффтопим smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Xonxt
Дата 18.3.2007, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Закончу оффотп тем, что в Университете мы работаем с 2003, поэтому, дома я работаю, соответственно, тоже с 2003.
А в 2003 такого свойства как DoubleBuffered нету, а оно там реализуется как-то по-другому. Надо книжку почитать )
PM MAIL ICQ Skype   Вверх
Idsa
Дата 19.3.2007, 03:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(agl @  18.3.2007,  17:17 Найти цитируемый пост)
У тебя наверно vs 2005, в 2003 ничего подобного вроде нету. 

Точно. Сейчас глянул в MSDN: действительно, DoubleBuffered появился только во втором фреймворке.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
mr.DUDA
Дата 19.3.2007, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



В 2003 у формы есть SetStyle(ControlStyles.DoubleBuffered), если я правильно помню.


--------------------
user posted image
PM MAIL WWW   Вверх
Naum
Дата 19.3.2007, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Правильнее будет вот так:
Код

this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); 
this.SetStyle( ControlStyles.DoubleBuffer, true);
this.SetStyle( ControlStyles.UserPaint, true);

Вот только беда - перерисовывается-то панель, а не форма. Поэтому от этого будет мало толка.
ИМХО, лучше написать наследник панели и его добавить на форму.


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 19.3.2007, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



А что даст наследник панели? Может лучше наследник формы?
PM   Вверх
Naum
Дата 19.3.2007, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Цитата(agl @  19.3.2007,  12:13 Найти цитируемый пост)
Может лучше наследник формы?

Так твоя форма итак уже есть наследник System.Windows.Forms.Form smile
Цитата(agl @  19.3.2007,  12:13 Найти цитируемый пост)
А что даст наследник панели?

В наследнике можно ничего не переписывать только в конструктор добавить строки
Код

this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); 
this.SetStyle( ControlStyles.DoubleBuffer, true);
this.SetStyle( ControlStyles.UserPaint, true);

тогда от них будет больший эфект.
Эти строки устанавливают стиль прорисовки данного контрола.
Если их добавить на форму (точнее, как уже выяснилось наследник формы) то они точно ускорят прорисовку самой формы, но не факт, что ускорят прорисовку контролов на форме.


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 19.3.2007, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



А код написать можно  smile , а то я туплю - опыта не хватает  smile 
PM   Вверх
Naum
Дата 19.3.2007, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Код

using System;
using System.Windows.Forms;

namespace WindowsApplication1
{
    public class MyPanel:Panel
    {
        public MyPanel()
        {
            this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); 
            this.SetStyle( ControlStyles.DoubleBuffer, true);
            this.SetStyle( ControlStyles.UserPaint, true);
        }
    }
}

Дальше кидаешь этот контрол на форму. И делаешь с ним все то же самое что и с обычной панелью.


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 19.3.2007, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



2Naum
Всё получилось, огромноё спасибо! Если не трудно, объясни пожалуйста, почему у наследника класса Панель есть свойства(SetStyle), которых нет у самого класса Панель?
PM   Вверх
Naum
Дата 19.3.2007, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



О, батенька, так это вам надо RTFM. И мне тоже, наверное.

Есть такое понятие как уровень доступа членов класса. (Объясняльщик из меня не очень, так что если не понятно - спрашивай).
Обычно выделяют пять уровней (по крайней мере в C#)

1. public - Доступ не ограничен.
2. protected - Доступ ограничен содержащим классом и классами наследниками от этого класса (именно поэтому метод SetStyle класса Control виден только в классах наследниках).
3. internal - Доступ ограничен содержащей класс сборкой.
4. protected internal - Доступ ограничен содержащей сборкой и классами наследниками.
5. private - Доступ ограничен содержащим классом.


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 19.3.2007, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



Спасибо за объяснение   smile , в общем понятно, видимо член SetStyle protected или protected internal, только непонятно на кой такии сложности. ИМХО, такии члены скрывать ненужно, хотя возможно моё мнение от нехватки знаний. Ещё раз спасибо  smile 
PM   Вверх
Xonxt
Дата 19.3.2007, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



щас попробуем...

*****

Ребят! Всем спасибо! Изображение нифига не дрожит! smile  smile 

Я думал как-то сделать двойную буферизацию для панели, но не догадался переписать конструктор по-умолчанию. Спасибо ) 

+1 шаг к завершению курсовой.  smile 

Это сообщение отредактировал(а) Xonxt - 19.3.2007, 21:10
PM MAIL ICQ Skype   Вверх
agl
Дата 19.3.2007, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



Не дрожит smile Naum'у спасибо, и всем остальным    smile  

2Xonxt
У меня ещё вопросик, почему в твоей проге сохранение не происходит? Теоритически, сохранение в событии panel1_MouseUp, а практически, при запуске твоей проги ничего не сохраняется :(, у меня по крайней мере, почему?  
PM   Вверх
Naum
Дата 20.3.2007, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



agl,  насчет сохранения... А у тебя метод panel1_MouseUp точно подписан на событие panel1.MouseUp?
smile 
Цитата(agl @  19.3.2007,  19:58 Найти цитируемый пост)
видимо член SetStyle protected или protected internal,

protected. Если бы было protected internal, то из твоего проекта (который по сути является уже другой сборкой) этот метод не был бы виден.

Это сообщение отредактировал(а) Naum - 20.3.2007, 13:29


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
Idsa
Дата 21.3.2007, 04:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(Naum @  20.3.2007,  13:22 Найти цитируемый пост)
protected. Если бы было protected internal, то из твоего проекта (который по сути является уже другой сборкой) этот метод не был бы виден.

Что-то я мысль не уловил :(. protected internal же "шире" protected. Значит, как я понимаю, в данном случае для пользователей панели нет разницы, protected или protected internal объявлен SetStyle: эффект один и тот же.


Цитата(agl @  19.3.2007,  18:58 Найти цитируемый пост)
ИМХО, такии члены скрывать ненужно

Вот мне тоже так кажется. Подскажите все-таки, чем вызвано запротекчивание smile SetStyle.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
agl
Дата 21.3.2007, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



Цитата(Naum @ 20.3.2007,  13:22)
agl,  насчет сохранения... А у тебя метод panel1_MouseUp точно подписан на событие panel1.MouseUp?

Точно. Она даже сохраняется в виде чёрного квадрата.

Это сообщение отредактировал(а) agl - 21.3.2007, 09:35

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  _MyPanel.rar 21,02 Kb
PM   Вверх
Naum
Дата 21.3.2007, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Цитата(Idsa @  21.3.2007,  05:44 Найти цитируемый пост)
 protected internal же "шире" protected.

Тьфу ты блин, сам запутался. Точно. protected internal "шире".
agl, Странно. В твоем проекте ничего не менял. Все сохраняет.

З.Ы. Верните старые смайлы.  smile 


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 21.3.2007, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



Цитата(Naum)
agl, Странно. В твоем проекте ничего не менял. Все сохраняет.

Очень странно ((, прикрепляю рисунок, который у меня сохраняется в
bin\Debug\img.bmp

Добавлено @ 11:20 
 smile 
В моем компе рисунок отображается как черный квадрат(смотрела и в Paint и в viewer'е, непонимаю в чём дело. А на форуме рисунок отображается

Это сообщение отредактировал(а) agl - 21.3.2007, 11:21

Присоединённый файл ( Кол-во скачиваний: 7 )
Присоединённый файл  img.bmp 4,75 Kb
PM   Вверх
Naum
Дата 21.3.2007, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Прям полтергейст какой-то.  smile 
Там волнистая линия на белом фоне.

З.Ы. Блин, а как тут прикрепить файл??? smile 


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
agl
Дата 21.3.2007, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 25.6.2006

Репутация: нет
Всего: 3



В бысром ответе видимо никака. Выбери предворительный просмотр сообщения и внизу появится textbox с кнопкой Browse, там и загрузи. В моем компе я вижу только черный квадрат, а на форуме хоть какое то изображение видно. Может у меня система прибалела..
PM   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0843 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.