1. Pascal / Говнокод #6410

    +96

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    function OnShape(sh: TShape; X, Y: Integer) : TBrushStyle;
    var r, cx, cy, d2: Integer;
    begin
    r := sh.Width div 2;
    cx := sh.Left + r;
    cy := sh.Top + r;
    d2 := (X - cx) * (X - cx) + (Y - cy) * (Y - cy);
    OnShape := bsClear;
    if d2 < r*r then OnShape := bsSolid;
    end;
    
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
    Shape1.Brush.Color := clRed;
    Shape1.Brush.Style := OnShape(Shape1, X, Y);
    Shape2.Brush.Color := clLime;
    Shape2.Brush.Style := OnShape(Shape2, X, Y);
    Shape3.Brush.Color := clYellow;
    Shape3.Brush.Style := OnShape(Shape3, X, Y);
    end;

    Откуда бы вы думали это? Правильно, "Занимательное программирование Delphi". Глава 14. Светофор.

    Запостил: Govnocoder#0xFF, 19 Апреля 2011

    Комментарии (5) RSS

    Добавить комментарий