Exemplo n.º 1
0
        void DrawNumber(Graphics g)
        {
            int x   = 0;
            int add = 0;

            if (Nr.Contains(","))
            {
                add = 89;
            }

            for (int i = 0; i < NumberOfDisplays; i++)
            {
                int dif = NumberOfDisplays - Nr.Length;

                if (i >= dif)
                {
                    Number = Nr[i - dif];

                    if (Number.Equals(','))
                    {
                        ColDot = ColOn;
                        x      = 1;
                    }
                    else
                    {
                        ColDot = ColOff;
                    }

                    SetSegmentsColors(Number);

                    DrawSegHor(ColA, g, 17 + (i - x) * 89 + add, 14);
                    DrawSegVer(ColC, g, 79 + (i - x) * 89 + add, 75);
                    DrawSegVer(ColB, g, 79 + (i - x) * 89 + add, 15);
                    DrawSegHor(ColD, g, 17 + (i - x) * 89 + add, 135);
                    DrawSegVer(ColE, g, 15 + (i - x) * 89 + add, 75);
                    DrawSegVer(ColF, g, 15 + (i - x) * 89 + add, 15);
                    DrawSegHor(ColG, g, 17 + (i - x) * 89 + add, 75);
                    DrawDot(ColDot, g, 86 + (i - x) * 89 + add, 130);
                }
                else
                {
                    DrawSegHor(ColOff, g, 17 + i * 89 + add, 14);
                    DrawSegVer(ColOff, g, 79 + i * 89 + add, 75);
                    DrawSegVer(ColOff, g, 79 + i * 89 + add, 15);
                    DrawSegHor(ColOff, g, 17 + i * 89 + add, 135);
                    DrawSegVer(ColOff, g, 15 + i * 89 + add, 75);
                    DrawSegVer(ColOff, g, 15 + i * 89 + add, 15);
                    DrawSegHor(ColOff, g, 17 + i * 89 + add, 75);
                    DrawDot(ColOff, g, 86 + i * 89 + add, 130);
                }
            }
        }
Exemplo n.º 2
0
        private void _7segment_Paint(object sender, PaintEventArgs e)
        {
            this.Size = new Size(NumberOfDisplays * 89 + 14, 150);
            Error     = false;

            Graphics g = e.Graphics;

            ErrorCheck();

            if (Error)
            {
                OnErrorDo(g);
            }
            else
            {
                DrawNumber(g);
            }


            if (Nr.Contains(","))
            {
                DoIfContainsDot(g);
            }
        }