首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用`NSControl.ControlSize.mini`编程制作“`NSPopUpButton`”?

如何用`NSControl.ControlSize.mini`编程制作“`NSPopUpButton`”?
EN

Stack Overflow用户
提问于 2020-01-27 00:44:56
回答 1查看 108关注 0票数 0
  • 我试着设置controlSize,但是它没有工作。
  • --我尝试了设置NSMenuItem.attributedTitle,但是它没有工作。设置NSMenuItem.attributedTitle使文本变小,但没有使检查点变小。因此,结果看起来很糟。

这是要复制的代码。

代码语言:javascript
复制
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和只有代码?

EN

回答 1

Stack Overflow用户

发布于 2020-01-27 01:25:21

只需为NSPopUpButton实例分配小字体即可。

代码语言:javascript
复制
popup1.font = NSFont.systemFont(ofSize: NSFont.systemFontSize(for: .mini))

没有其他的东西是真正需要的。代码可以这样缩短。

代码语言:javascript
复制
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)

这同样适用于任何其他基于控件的类。您需要同时设置controlSizefontcontrolSize只控制图形外观部分,font控制文本呈现。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59924114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档