Ejemplo n.º 1
0
 void DrawPatternsEx(QPainter ptr)
 {
     ptr.SetPen(PenStyle.SolidLine);
     ptr.SetPen(QColor.FromRgb(255, 0, 0));
     ptr.DrawLine(0, Y, Size.Width, Y);
     ptr.DrawLine(X, 0, X, Size.Height);
 }
Ejemplo n.º 2
0
    protected override void PaintEvent(QPaintEvent e)
    {
        QColor hourColor   = new QColor(127, 0, 127);
        QColor minuteColor = new QColor(0,127,127,191);

        int   side = QMin(Width(), Height());
        QTime time = QTime.CurrentTime();

        QPainter painter = new QPainter(this);

        painter.SetRenderHint(QPainter.RenderHint.Antialiasing);
        painter.Translate(Width() / 2, Height() / 2);
        painter.Scale(side / 200.0, side / 200.0);

        painter.SetPen(Qt.PenStyle.NoPen);
        painter.SetBrush(hourColor);

        painter.Save();
        painter.Rotate(30.0 * ((time.Hour() + time.Minute() / 60.0)));
        painter.DrawConvexPolygon(new QPolygon(hourHand));
        painter.Restore();

        painter.SetPen(hourColor);

        for (int i = 0; i < 12; ++i)
        {
            painter.DrawLine(88, 0, 96, 0);
            painter.Rotate(30.0);
        }

        painter.SetPen(Qt.PenStyle.NoPen);
        painter.SetBrush(minuteColor);

        painter.Save();
        painter.Rotate(6.0 * (time.Minute() + time.Second() / 60.0));
        painter.DrawConvexPolygon(new QPolygon(minuteHand));
        painter.Restore();

        painter.SetPen(minuteColor);

        for (int j = 0; j < 60; ++j)
        {
            if ((j % 5) != 0)
            {
                painter.DrawLine(92, 0, 96, 0);
            }
            painter.Rotate(6.0);
        }

        painter.End();
    }