.NET 4.x Graphics & GraphicsState (восстановить состояние объекта) - C#
Формулировка задачи:
private void Form1_MouseLeave(object sender, EventArgs e) { g.Restore(gs); //Восстанавливаю состояние, но не удачно } Graphics g = null; GraphicsState gs = null; private void Form1_MouseEnter(object sender, EventArgs e) { g = Graphics.FromHwnd(((PictureBox)sender).Handle); gs = Graphics.FromHwnd(((PictureBox)sender).Handle).Save(); //Сохраняю состояние g.FillRectangle(new SolidBrush(Color.FromArgb(50, 50, 50, 50)), new Rectangle(new Point(0, 0), new Size(((PictureBox)sender).Width, ((PictureBox)sender).Height))); //Рисую }
Ну что, никто не сталкивался с такой проблемой? Подскажите пожалуйста.
Решение задачи: «.NET 4.x Graphics & GraphicsState (восстановить состояние объекта)»
textual
Листинг программы
private void pictureBox1_MouseEnter ( object sender, EventArgs e ) { using ( var g = Graphics.FromHwnd( ( sender as PictureBox ).Handle ) ) { g.FillRectangle( new SolidBrush( Color.FromArgb( 50, 50, 50, 50 ) ), new Rectangle( new Point( 0, 0 ), new Size( this.Width, this.Height ) ) ); } } private void pictureBox1_MouseLeave ( object sender, EventArgs e ) { ( sender as PictureBox ).Invalidate(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д