问题标签 [nstextview]
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.
objective-c - 如何使 Tab 键将焦点移出 NSTextView?
我正在使用 NSTextView 来允许多行输入。但是,由于我的应用程序的性质,用户在按下 TAB 时会更舒服地移动到下一个输入元素。
如何让 TAB 退出 NSTextView,同时保持 Enter 键的换行行为?
cocoa - 文本视图的多个撤消管理器
我有一个文本视图,它从存储在模型对象中的属性字符串中获取其内容。我在抽屉中列出了其中几个模型对象,当用户单击其中一个时,文本视图会交换其内容。
我现在还需要将撤消管理器换成文本视图。我在我的模型对象上初始化了一个撤消管理器,并使用 undoManagerForTextView 将其返回到文本视图,但有些地方不太对劲。
策略性放置的日志语句向我展示了一切都按计划进行:在启动时,一个新的模型对象被正确初始化,并且文本视图总是拉出一个非空的撤消管理器。但是当谈到实际撤消时,我就是无法获得我想要的行为。
我打开一个窗口,输入一些内容并按 cmd+z,然后撤消操作。我打开一个窗口,输入一些东西,在桌子上选择一个新模型,输入一些东西,回到第一个模型并尝试撤消,我得到的只是一声哔哔声。
文档中的某些内容让我大吃一惊,因为这意味着我无法对多个模型对象进行撤消:
只要字段或单元格是第一响应者(即键盘操作的焦点),默认的撤消和重做行为就适用于文本字段和单元格中的文本。一旦插入点离开字段或单元格,之前的操作将无法撤消。
cocoa - NSTextView 的 adjustScroll 方法
我试图在我的 Cocoa 文本编辑器中实现打字机滚动,保持插入点在其滚动视图中垂直居中。
为此,我进行了子类化NSClipView
以提供一种scrollToPointWithoutConstraint
方法,该方法无需调用即可将文档滚动到指定点constrainScrollPoint
。这是必要的,因为对于短文档,插入点不能居中,除非我们滚动超出文档的边界。
到目前为止,这似乎相当简单,并且可以满足我的要求。当我尝试使用滚动条滚动时,问题就出现了。如果我滚动到文档的末尾,这样滚动视图的一部分包含文档边界之外的区域,尝试向上滚动一个小增量会导致滚动视图跳转,立即夹紧到文档的实际边界。
我收集到我可能需要子类NSTextView
化并覆盖该adjustScroll
方法;这是我的实际问题开始的地方。proposedVisibleRect
传递给的已经adjustScroll
调整了其尺寸,以便它们位于文档的实际范围内。有没有办法可以改变proposedVisibleRect
before的值adjustScroll
?或者,我是否完全错了?在这一点上,任何建议将不胜感激。
objective-c - 在 NSTextView 中创建指向某些文本的超链接
我可以使用“链接面板”在 NSTextView 中创建指向某个 url 的超链接。或者我可以使用 NSAttributedString 的 NSLinkAttributeName 属性手动添加链接。
不过,我不想创建指向某些外部 url 的超链接,我希望能够创建指向 NSTextView 中某些文本的超链接。您知道如何在 Pages 中将一些文本设置为书签,然后您可以创建指向该书签的超链接吗?关于如何去做的任何想法或例子?
objective-c - 控制 NSTextView 更新以处理闪烁并提高速度
我有一个子类 NSTextView,我正在使用选择器 replaceCharactersInRange:withString:、setSelectedRange: 和 insertText: 在单独的线程中操作(使用 performSelectorOnMainThread:withObject:waitUntilDone:)。当 NSTextView 更新每个操作的显示时,我遇到了文本闪烁和性能不佳的问题。
关于如何控制何时更新显示的任何建议,以便我只能在实际需要时更新它?我尝试使用似乎被忽略的各种组合 setNeedsDisplay:NO (来自主线程和后台线程,在我的更新之前和之后)。
提前感谢任何可以提供一些见解的人。
cocoa - 如何根据其内容调整 NSTextView 的大小?
我正在尝试在 NSTextView 中设置属性字符串。我想根据它的内容增加它的高度,最初它被设置为一些默认值。
所以我尝试了这个方法:
我在 NSTextView 中设置内容。当我们在 NSTextView 中设置一些内容时,它的大小会自动增加。所以我增加了它的超级视图的高度,即 NSScrollView 到它的高度,但是 NSScrollView 没有完全调整大小,它在右边显示滚动条。
任何人都可以建议我解决这个问题的一些方法或方法。通过谷歌搜索,我发现在 UITextView 中有 contentSize 方法可以获取其内容的大小,我试图在 NSTextView 中找到类似的方法但没有成功:(
objective-c - 将启用的 NSButton 绑定到 NSTextView 中的选择
我有一个按钮可以对 NSTextView 中的选定文本执行某些操作。如果未选择任何内容,则按下按钮时不会发生任何事情......那么按钮的启用属性是否可以绑定到是否选择了某些文本?
cocoa - 如何制作一个 Xcode 风格的控制台窗口?
我正在用 Cocoa 制作一个 Haskell 编辑器,支持一些应用程序内的文本输出会很有用。更好的是支持一些文本输入。
Xcode 在它的控制台中完成所有这些,看起来它可能是一个 NSTextView,但不确定是否有人以前做过所有这些。
objective-c - How to paint background of specific range of text in NSTextView
This is not a specific bug, its more about not knowing how to do something.
I've an NSTextView and I need to paint the background of specific ranges of text when the user clicks on a specific part of the text view. I've tried this but I just get erratic behaviour in the sense that sometimes text loses the foreground color or the background doesn't span the whole range:
For the sake of simplicity assume that range is always a valid string (it is in my testing environment).
cocoa - 在 Cocoa 中获取 shell 脚本的输出
有没有办法让我运行一个 shell 脚本,并在 NSTextView 中显示输出?我根本不希望用户向 shell 脚本输入任何内容,因为它只是被调用来编译大量文件。到目前为止,shell 脚本部分工作正常,但我只是不知道如何运行它并在 NSTextView 中显示输出。我知道可以使用 system() 和 NSTask 运行 shell 脚本,但是如何将其输出到 NSTextView 中?