1.8 CheckButton
CheckButton即NSButton对外提供的一个有关checkboxWithTitle的构造方法来实现的,可作为勾选按钮(不限按钮种类与数量)而存在。
1.8.1 基本声明
var checkButtonMovie: NSButton!
checkButtonMovie = NSButton(checkboxWithTitle: "Movie", target: self, action: #selector(movieListener))
checkButtonMovie.frame = CGRect(x: (self.view.frame.width / 5), y: 150, width: 65, height: 29)
self.view.addSubview(checkButtonMovie)
@objc func movieListener(){
print("------> STATUS:\(checkButtonMovie.state.rawValue)")
}
说明:rawValue 为1则表示勾选,为0则为未勾选状态。
本节代码:
//
// WidgetController.swift
// Versatile
//
// Created by Eldest's MacBook on 2021/10/9.
//
import Cocoa
class WidgetController: NSViewController {
var mView: NSView!
var checkButtonMovie: NSButton!
var checkButtonMusic: NSButton!
override func loadView() {
self.view = NSView(frame: NSRect(x: 0, y: 0, width: 500, height: 300))
}
private func initView(){
mView = NSView(frame: NSRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height))
checkButtonMovie = NSButton(checkboxWithTitle: "Movie", target: self, action: #selector(movieListener))
checkButtonMusic = NSButton(checkboxWithTitle: "Music", target: self, action: #selector(musicListener))
checkButtonMovie.frame = CGRect(x: (self.view.frame.width / 5), y: 150, width: 65, height: 29)
checkButtonMusic.frame = CGRect(x: (self.view.frame.width / 5), y: 185, width: 65, height: 29)
self.view.addSubview(checkButtonMovie)
self.view.addSubview(checkButtonMusic)
}
private func initConfig(){
self.title = "NSWidget-Family"
}
override func viewDidLoad() {
super.viewDidLoad()
// Do view setup here.
initView()
initConfig()
}
@objc func movieListener(){
print("------> STATUS:\(checkButtonMovie.state.rawValue)")
}
@objc func musicListener(){
print("------> STATUS:\(checkButtonMusic.state.rawValue)")
}
}
运行截图