PureBasic

;
; ------------------------------------------------------------
;
;  PureBasic - пример 2D рисования
;
;    (c) 2005 - Fantaisie Software
;
; ------------------------------------------------------------
;

If OpenWindow(0, 100, 200, 300, 200, "2D Drawing Test")

  ; Создайте за кадром изображение с зеленым кругом.
  ; Это изображение будет отображено позже.
  ;
  If CreateImage(0, 300, 200)
    If StartDrawing(ImageOutput(0))
      Circle(100,100,50,RGB(0,0,255))  ; Ярко - синий круг...

      Box(150,20,20,20, RGB(0,255,0))  ; и зелёный прямоугольник.
     
      FrontColor(RGB(255,0,0)) ; и наконец, красные линии...
      For k=0 To 20
        LineXY(10,10+k*8,200, 0)
      Next
     
      DrawingMode(#PB_2DDrawing_Transparent)
      BackColor(RGB(0,155,155)) ; Измените для текста цвет фона и рисования.
      FrontColor(RGB(255,255,255))
      DrawText(10,50,"Hello, this is a test")

      StopDrawing()
    EndIf
  EndIf

  ; Создайте Гаджет для отображения нашего изображения
 
  ImageGadget(0, 0, 0, 0, 0, ImageID(0))
 
  ;
  ; Это - 'цикл событий'. Все пользовательские действия обрабатываются здесь.
  ; Очень легко понять: когда действие происходит, Событие - не 0,
  ;  и мы просто должны проверить то, что произошло...
  ;
 
  Repeat
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow  ; Если пользователь нажал на окне кнопку закрытия.
 
EndIf

End  ; Все открытые окна автоматически закрывает PureBasic.