2015-12-23 6 views
0

Я пытаюсь нарисовать график с помощью Swift. Я создал обычай NSView и класс NSView. В ViewController Я хотел бы вызвать метод, который обновляет NSView и рисует полный график, используя значения, введенные пользователем.Нарисуйте график в NSView, используя значения, введенные пользователем

import Cocoa 

class Graph: NSView { 

    let startPoint = NSPoint(x: 10, y: 10) 

    override func drawRect(dirtyRect: NSRect) { 
     NSColor.whiteColor().set() // set white color 
     NSRectFill(dirtyRect)  // fill the Rect in the View 

     // draw axes lines 
     NSColor.blackColor().set() 
     NSBezierPath.strokeLineFromPoint(startPoint, toPoint: NSPoint(x: Double(dirtyRect.width) - 10.0, y: 10.0)) 
     NSBezierPath.strokeLineFromPoint(startPoint, toPoint: NSPoint(x: 10.0, y: Double(dirtyRect.height) - 10.0)) 
    } 

    func drawGraphicsOfNewteork(arrayOfData: [NSTextField]){ 
     // Here I would draw in the View some lines using the arrayOfData 
    } 
} 
+0

Позвоните изнутри 'drawRect'. –

+0

Сделайте все чертежи внутри 'drawRect'. Вызов 'setNeedsDisplayInRect', если вы хотите обновить график. – Willeke

ответ

0

Вы прочитали документацию вообще? Поиск «чертежа» включает Cocoa Drawing Guide.

Как другие заявили, рисунок сделан из внутри drawRect(). Система будет вызывать его в «правильное время», после того, как вы отметите его, установив needsDisplay в значение true/YES.

Смежные вопросы