using System; using System.Drawing; using System.Windows.Forms; static class Program { static void Main() { Application.Run(new FullScreen()); } } public sealed class FullScreen : Form { const int ColorCount = 256; public FullScreen() { FormBorderStyle = FormBorderStyle.None; WindowState = FormWindowState.Maximized; KeyPress += (s, e) => Application.Exit(); BackgroundImage = ColorBars(Screen.FromControl(this).Bounds); } private static Bitmap ColorBars(Rectangle size) { var colorBars = new Bitmap(size.Width, size.Height); Func forwardColor = (x, divs) => (int)(x * ((float)divs / size.Width)) * ColorCount / divs; Func reverseColor = (x, divs) => ColorCount - 1 - forwardColor(x, divs); Action setGray = (x, y, gray) => colorBars.SetPixel(x, y, Color.FromArgb(gray, gray, gray)); Action setForward = (x, y, divs) => setGray(x, y, forwardColor(x, divs)); Action setReverse = (x, y, divs) => setGray(x, y, reverseColor(x, divs)); int verticalStripe = size.Height / 4; for (int x = 0; x < size.Width; x++) { for (int y = 0; y < verticalStripe; y++) setForward(x, y, 8); for (int y = verticalStripe; y < verticalStripe * 2; y++) setReverse(x, y, 16); for (int y = verticalStripe * 2; y < verticalStripe * 3; y++) setForward(x, y, 32); for (int y = verticalStripe * 3; y < verticalStripe * 4; y++) setReverse(x, y, 64); } return colorBars; } }