controlSize,但是它没有工作。NSMenuItem.attributedTitle,但是它没有工作。设置NSMenuItem.attributedTitle使文本变小,但没有使检查点变小。因此,结果看起来很糟。

这是要复制的代码。
let testFont1 = NSFont.menuFont(ofSize: NSFont.systemFontSize(for: .mini))
let menu1 = NSMenu()
menu1.font = testFont1
menu1.addItem(withTitle: "AAA", action: nil, keyEquivalent: "")
let item2 = NSMenuItem()
item2.attributedTitle = NSAttributedString(string: "BBB", attributes: [.font: testFont1])
menu1.addItem(item2)
let popup1 = NSPopUpButton()
popup1.menu = menu1
popup1.controlSize = .mini
popup1.sizeToFit()
window.contentView?.addSubview(popup1)如何制作一个迷你弹出式按钮正确地没有NIB和只有代码?
发布于 2020-01-27 01:25:21
只需为NSPopUpButton实例分配小字体即可。
popup1.font = NSFont.systemFont(ofSize: NSFont.systemFontSize(for: .mini))没有其他的东西是真正需要的。代码可以这样缩短。
let popup1 = NSPopUpButton()
popup1.controlSize = .mini
popup1.font = NSFont.systemFont(ofSize: NSFont.systemFontSize(for: .mini))
popup1.addItem(withTitle: "AAA")
popup1.addItem(withTitle: "BBB")
popup1.sizeToFit()
window.contentView?.addSubview(popup1)这同样适用于任何其他基于控件的类。您需要同时设置controlSize和font。controlSize只控制图形外观部分,font控制文本呈现。
https://stackoverflow.com/questions/59924114
复制相似问题