gpt4 book ai didi

macos - 为什么这个形状不显示在我的 View 中?

转载 作者:行者123 更新时间:2023-11-28 13:09:58 24 4
gpt4 key购买 nike

我的问题是,对于为 OSX 编写的应用程序,我无法使用 swift 在 View Controller 中绘制椭圆。

我在 View Controller 中有以下代码:

class TouchController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()

//// Color Declarations
let color2 = NSColor(calibratedRed: 0.769, green: 0.364, blue: 0.364, alpha: 1)

//// Oval Drawing
let ovalPath = NSBezierPath(ovalInRect: NSMakeRect(70, 24, 145, 143))
color2.setFill()
ovalPath.fill()
}
}

绘图的代码是由 paint code 创建的。我正在用 Swift 为 OSX 写这篇文章。我的问题是为什么我编译代码时没有显示椭圆?

最佳答案

在 Cocoa 中,实现 drawRect NSView 在 View 中绘制的方法。使用您现有的代码,请参阅这个与 Playground 兼容的示例:

import Cocoa

public class CustomOval : NSView {
public override func drawRect(dirtyRect: NSRect) {
let color = NSColor(calibratedRed: 0.769, green: 0.364, blue: 0.364, alpha: 1)
let path = NSBezierPath(ovalInRect: NSMakeRect(70, 24, 145, 143))
color.setFill()
path.fill()
}
}

var oval = CustomOval(frame: NSRect(x: 0, y: 0, width: 300, height: 300))

参见 "Drawing Shapes Using Bézier Paths"获取更多信息。

关于macos - 为什么这个形状不显示在我的 View 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31712355/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com