Mir*_*ira 1 cocoa nspopupbutton
我有一个很大的列表 - 超过200个项目 - 由NSPopUpButton管理.单击时,列表一直延伸到屏幕的顶部或底部以及更远处.
如何限制开放尺寸,以便一次显示最多20个左右的项目?
我找到的解决方案如下:
我将NSPopUpButton子类化,并在我的子类中定义confinementRectForMenu:onScreen:(NSMenuDelegate协议的一部分).这限制了列表占用的空间.不幸的是,你不能只指定一个尺寸,但必须做好确定位置的工作.您可以采取[self frame] origin,使用[[self superview] convertPointToBase:],稍微调整一下并进行其他任何计算,然后进行最终转换[[self window] convertBaseToScreen:].
| 归档时间: |
|
| 查看次数: |
1052 次 |
| 最近记录: |