2013-01-15 4 views
0

Я пытаюсь просто нарисовать изображение из папки ресурсов в виде окна, но по какой-то причине он не отображается, вот код, который я пытаюсь использовать ... У меня есть начиталась и поиск на некоторое время о классе графики и рисования в C#, и я не могу показаться, чтобы понять это очень хорошо ... любая помощь или комментарии очень appreicatedРисование растрового изображения в C#

Bitmap bmp = new Bitmap(WindowsFormsApplication1.Properties.Resources.BoostNeddleTest); 
Graphics m_graphics = Graphics.FromImage(bmp); 
m_graphics.DrawImage(bmp, 100, 100); 

изображение не разыгрывается, я m не совсем уверен, почему.

+1

Место, где вы хотите отобразить изображение? Вы пытались использовать ['PictureBox'] (http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.aspx)? –

+0

На форме у меня есть другое изображение, которое я хочу нарисовать над этим, поэтому я не был уверен, как использовать несколько элементов PictureBox. – Bubo

+0

использует 'использование' вокруг Графиков так, чтобы он был правильно закрыт и очищен, а изменения применяется к изображению. – Nyerguds

ответ

0

вы могли бы сделать что-то вроде этого VRKnight

protected override void OnPaint(PaintEventArgs e) 
{ 
    Bitmap bmp = new Bitmap(WindowsFormsApplication1.Properties.Resources.BoostNeddleTest); 
    // Draw using this 
    e.Graphics.DrawImage(bmp,100,100); 
    base.OnPaint(e); 
} 

вы можете прочитать больше о OnPait Override здесь Overriding the OnPaint Method

+0

А, ок! Я видел это раньше, но как вызвать PaintEvent? – Bubo

+0

Чтобы переопределить наследуемое событие Переопределить защищенный метод OnEventName. Вызвать метод OnEventName базового класса из переопределенного метода OnEventName, чтобы зарегистрированные делегаты получили событие. – MethodMan

0

Путем Graphics объект работает как это: -

destination.DrawImage (source, position, etc...) 

и в вашем коде пункт назначения совпадает с исходным кодом! Ваш m_graphics должен быть устройством отображения (экраном или принтером), объект Graphics, который вам нужно использовать, предоставляется вам в методах OnPaint для WinForm.

Смежные вопросы