- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 UI 上有一个带有 4 个按钮的 NSSegmentedControl。该控件连接到一个方法,该方法将根据单击的段调用不同的方法:
- (IBAction)performActionFromClick:(id)sender {
NSInteger selectedSegment = [sender selectedSegment];
NSInteger clickedSegmentTag = [[sender cell] tagForSegment:selectedSegment];
switch (clickedSegmentTag) {
case 0: [self showNewEventWindow:nil]; break;
case 1: [self showNewTaskWindow:nil]; break;
case 2: [self toggleTaskSplitView:nil]; break;
case 3: [self showGearMenu]; break;
}
}
段 4 在 awakeFromNib 方法中附加了一个菜单。我希望当用户单击该段时该菜单会下拉。此时,只有当用户单击并按住菜单时,它才会掉落。根据我的在线研究,这是因为关联的操作。
我目前正在通过使用一些代码来获取段控件的原点并使用 NSMenu 的 popUpContextMenu:withEvent:forView
弹出上下文菜单来解决这个问题,但这非常hacktastic,看起来与将菜单下拉到分段控制单元下方的标准行为相比,这很糟糕。
有没有办法可以让菜单在单击后按应有的方式下拉,而不是执行黑客上下文菜单的操作?
最佳答案
子类NSSegmentedCell,重写下面的方法,并替换IB中的单元类。 (不需要私有(private) API)。
- (SEL)action
{
//this allows connected menu to popup instantly (because no action is returned for menu button)
if ([self tagForSegment:[self selectedSegment]]==0) {
return nil;
} else {
return [super action];
}
}
关于cocoa - 尽管已设置操作,但单击分段时仍显示 NSSegmentedControl 菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1203698/
我有一个 NSSegmentedControl,其中,在用户单击时,在将操作发送到其目标之前应满足一些条件。 到目前为止,我设法通过覆盖 -mouseDown 事件处理程序并仅在成功检查我的条件后调用
我有一个 NSTouchBar,其中一个项目的 View 是一个 NSSegmentedControl,它有 4 个项目 - A、B、C、D。对于有视力的人来说,它使感觉,但对于使用 VoiceOve
我有一个 NSSegmentedControl 设置为像带有模板图像图标的按钮(模式 Momentary)一样工作,但与 NSButton 不同,图像确实例如,当窗口打开时,不会改变/变暗。丢失 ke
我没有使用任何 Storyboard/NIB,我正在以编程方式创建我的所有 UI。 这是主窗口 Controller : class MainWindowController: NSWindowCon
我在工具栏中有一个 NSSegmentedControl。其模式设置为“瞬时”,因为这些片段应该看起来像按钮一样工作,而不是永久选择。 启用规则: 选择内容后,应启用所有 3 个片段。 当没有选择任何
我的 AppKit 应用程序的 NSSegmentedControl 没有在辅助功能检查器中显示任何标签,这意味着残疾用户将无法使用辅助设备与他们互动。在段控件上调用 setAccessibility
我正在尝试找到一种方法来更改所选控制按钮的颜色。这可能通过子类化 NSSegmentedControl 或 NSSegmentedCell 或任何其他方式吗?如果是这样,有人可以给我指路吗? 最佳答案
我在可拖动 View 中有一个 NSSegmentedControl (这是一个非常简化的测试用例来演示该问题)。 首次创建时,一切看起来都正常,如下图所示: 浅绿色背景的 View 是可拖动的。如果
我有一个 TableView ,其最右侧的列有一个 NSSegmentedCell。 从中提取单元格的 NSSegmentedControls 使用“任意”跟踪模式(又名:多重选择),并且基于可能值为
我在界面生成器上创建了这个 NSSegmentedControl 并保存在 xib 文件中。该控件最初有 4 个段。 如果我用这个 [self.myControl setSegmentCount:6]
我是 Mac 编程新手,但我对应用程序有一些想法。我的问题是:我有一个带有 2 个单元格的 NSSegmentedControl,如果选择了单元格号 1,我想在标签上写一些内容,例如蓝色。我怎样才能做
我希望我的 NSSegmentedControl 在启用时选择一个分段,在禁用时不选择任何分段(iTunes 中的 View NSSegmentedControl 具有的行为类型)。 这里有一些图片:
我的 Cocoa 应用程序中有一个表单,其中包含一个 NSSegmentedControl,我希望可以通过键盘控制它。然而,NSSegmentedControl 似乎很不愿意成为第一响应者。 将窗口的
我想自定义 UISegmentedControl 的背景颜色和文本颜色。有针对 IOS 执行此操作的选项,但没有找到针对 OSX 的任何内容。 最佳答案 您可以直接设置字体,例如: segmented
我已将 NSSegmentedControl 添加到普通窗口的水平分割 View 上的 Pane 中。我以为调整 Spring 会让分段控制中心自动运行,但事实并非如此。如何使其保持居中? 有人告诉我
我有一个非常动态的 UI,它在文档窗口的工具栏中使用了 NSSegmentedControl。 NSSegmentedControl 动态获取分配的元素。 元素的数量可以在 1 到 15 之间变化很大
我正在尝试构建一个分段控件,就像 TextEdit 中的粗体/斜体/下划线控件一样。 有没有办法为每个段设置自定义属性字符串?单元格上的 [set attributeStringValue:] 没有任
在 10.10 中,Apple 通过 Storyboard 和一些类引入了 AppKit 的一些更新。其中之一是 NSTabViewController。 在 WWDC Session 212 中,演
我正在尝试增加 NSSegmentedControl 的高度,使其超出 25px“常规”控件大小。我对 NSSegmentedCell 进行了子类化,我知道我有 2 种方法可以使用。 - (void)
对于我的 NSSegmentedControl,我用它来显示一个栏来控制 NSTableView。我设置了代码以编程方式控制大小: for (NSInteger i = 1; i segmentWi
我是一名优秀的程序员,十分优秀!