问题标签 [nsscrollview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1963 浏览

cocoa - 魔术鼠标动量滚动不起作用

不幸的是,这对我来说很难测试自己,因为我还没有自己的 Magic Mouse,但是我的测试人员告诉我,他们确实有一个 Magic Mouse,动量滚动在我的应用程序中不起作用。我没有继承 NSScrollView,但 scrollview 的文档视图都是自定义的。我也没有覆盖 scrollWheel: 任何地方,但是动力显然不起作用。我什至不知道从哪里开始。我认为它只会发送 scrollWheel 事件,事情会自行解决。(使用滚轮或在 MBP 触控板上滚动按预期工作。)显然我必须以某种方式阻止它,但我什至不知道从哪里开始。想法?

0 投票
1 回答
1170 浏览

objective-c - 子类化NSScroller,如何去掉右下角的白色方块?

我已经创建了一个类似 iTunes 的 NSScroller 子类,但是如果水平和垂直滚动条在 NSScrollView 或 NSTableView 中都可见,我会在右下角留下一个难看的白色方块。任何人都知道在哪里添加我的自定义绘图以用更漂亮的东西填充它?

0 投票
2 回答
883 浏览

objective-c - NSScrollView 中减小的图像大小

我正在尝试将图像加载到我的 NSImageView/NSScrollView 中并以实际大小显示,但图像神秘地最终以大约一半大小显示。起初我认为它可能会被缩小以适应框架等的某种约束,但很快意识到这不可能,因为如果我物理放大图像尺寸(在图像编辑程序中)然后加载它再次,我发现我大概可以加载/显示尽可能大的图像。

有问题的图像的实际尺寸仅为 2505 x 930,我想这不是问题,因为我可以将其翻倍和翻两番而没有任何明显的问题(当然,显示时它们都缩小了约 50% )。我非常简单的代码的相关部分是:

}

谁能告诉我这里哪里出错了,以及如何以实际尺寸显示图像?

解决方案:好的,所以调用“size”会导致显示的图像太小而无法使用,调用“pixelsHigh/pixelsWide”会导致放大图像的比例不确定...

我的测试应用程序使用几个滑块驱动的“十字准线”来绘制图像上特征的坐标(例如照片或地图)。纯属偶然,我无意中注意到,虽然加载的图像仅显示其实际尺寸的一小部分,但 x,y 坐标确实对应于现实生活(表示大约 70 像素/英寸)。去想那个...

使用:

我现在能够以已知的放大倍率加载图像,并将绘制的 x,y 测量值减小相同的因子。我还加入了一个 NSAffineTransform 方法,让我可以放大/缩小以获得最佳观看尺寸。

呸!这对于我相当新手级别的人来说是一个挑战,我仍然不了解原始显示问题的根本原因,但我想最终结果才是最重要的。再次感谢你们两个:-)

0 投票
1 回答
772 浏览

objective-c - 计算 NSScrollView 相对于主图像的位置

假设我加载了一个尺寸为 2000x2000 的 NSImage,并且仅在帧大小为 500x300 的 NSScrollView 内显示图片的一部分。如何计算图像 0,0 原点和视图 0,0 原点之间的距离(这样我就可以确定视图相对于整个图像的 x,y 坐标)?

提前致谢 :-)

0 投票
0 回答
373 浏览

cocoa - 滚动条出现/消失时如何调整 NSOutlineView 列的大小?

这应该是非常基本的,但是在尝试了一个小时左右之后,我无法弄清楚如何正确地做到这一点:

我有一个包含两列的 NSOutline 视图,其中右侧应该始终完全可见。封闭的 NSScrollView 设置为仅显示垂直滚动条。现在,每当垂直滚动条出现时,它都会覆盖右列的一部分。然而,我想要实现的是右栏向左移动,以便它仍然完全可见。

我首先尝试摆弄 IB 中的调整大小选项一段时间,但这似乎没有奏效。

然后我创建了一个自定义的 NSOutlineView

问题是,当滚动条消失并且列由于某种非常难看的原因而增长和收缩几次时,该函数会被调用多次。此外,当窗口失去焦点时,左列会恢复到正常大小,导致右列再次被滚动条覆盖。

0 投票
3 回答
5546 浏览

objective-c - 放大 NSView

我有一个 NSView ,用户可以在其中画圆圈。这些圆存储为 NSBezierPaths 数组,在 drawRect: 中,我循环遍历数组并调用-stroke每个路径。如何添加一个按钮来放大和缩小 NSView?只是改变视图的边界?

谢谢。

0 投票
2 回答
1478 浏览

cocoa - NSScrollView - 图案背景 - 如何从左上角开始?

为了填充NSScrollview图案图像,我使用使用- (void)setBackgroundColor:(NSColor *)aColor方法aColor创建的+ (NSColor *)colorWithPatternImage:(NSImage *)image方法。尽管isFlipped返回了什么NSScrollView及其内容视图,模式从左下角开始重复,而我希望它从左上角开始。我怎样才能做到这一点?

0 投票
0 回答
583 浏览

cocoa - NSTextView 的 adjustScroll 方法

我试图在我的 Cocoa 文本编辑器中实现打字机滚动,保持插入点在其滚动视图中垂直居中。

为此,我进行了子类化NSClipView以提供一种scrollToPointWithoutConstraint方法,该方法无需调用即可将文档滚动到指定点constrainScrollPoint。这是必要的,因为对于短文档,插入点不能居中,除非我们滚动超出文档的边界。

到目前为止,这似乎相当简单,并且可以满足我的要求。当我尝试使用滚动条滚动时,问题就出现了。如果我滚动到文档的末尾,这样滚动视图的一部分包含文档边界之外的区域,尝试向上滚动一个小增量会导致滚动视图跳转,立即夹紧到文档的实际边界。

我收集到我可能需要子类NSTextView化并覆盖该adjustScroll方法;这是我的实际问题开始的地方。proposedVisibleRect传递给的已经adjustScroll调整了其尺寸,以便它们位于文档的实际范围内。有没有办法可以改变proposedVisibleRectbefore的值adjustScroll?或者,我是否完全错了?在这一点上,任何建议将不胜感激。

0 投票
1 回答
2428 浏览

cocoa - 如何观察 NSScroller 的变化?

我有一个NSScrollView子类,我想NSView根据当前滚动位置更新另一个。我尝试过 KVC 观察valueof[self horizontalScroller]但从未被调用。

您是否在我的推理中看到错误或知道如何观察滚动的更好方法NSScrollview

0 投票
2 回答
3195 浏览

objective-c - NSScrollView 框架和翻转的 documentView

我有 NSScrollView 的问题,它没有按我想要的方式显示。是的,我知道网络上有很多关于它的帖子,我需要在我的 NSView 子类中覆盖 isFlipped,以使其返回 YES。

好的,完成了,所以现在,我的 scrollView 从上到下滚动,而不是像在覆盖 isFlipped 之前那样反向滚动。

但是,这是第二部分,我真正的问题,我没有在网上找到任何答案,如果一切都翻转了,我应该如何编写代码,或者在界面构建器中创建我的视图?如果我把一些东西放在顶部,它会显示在底部……你有什么神奇的技巧来处理它吗?

我的最后一个问题是 NSScrollView 框架。在设置滚动视图的documentView之前,一切都很好,滚动视图显示在我选择的位置,但是,当我设置文档视图时,滚动视图框架看起来更大,所以我必须调整它的大小......。这是正常行为吗?

非常感谢。