Cocoa China 苹果开发中文站

苹果Mac OS X开发 iPhone开发 Cocoa以及Cocoa Touch

推荐使用Safari浏览器阅读本站

NSTextView

在自定义NSTextField中响应键盘消息

看到Cocoachina讨论区上有人问起NSTextField的问题,翻译一下这篇文章。希望能够对大家有一定的参考意义。

这个代码做的事情很简单,按键盘的“上”,文本框中的数字会增加,反之,按“下”,文本框中的数字会减少。

点击这里阅读全文 »

随处使用Cocoa文字系统

 

在某些情况下你可能需要对想显示在屏幕上的文字做更多的控制,而不是仅仅使用NSTextField或者NSTextView,有时候你需要更高效地在屏幕上画文字,而不想使用NSStringDrawing方法。还可能你需要在CGContext上画文字,再有可能你想在一个Carbon程序中画文字。

 

这个时候,你就可能会考虑CoreText了,不过你还可能想兼容Mac OS X 10.4。这里又一个简单的方法可以满足你全部的需要。

点击这里阅读全文 »

将TextView的内容获取为NSString

以下是代码:

NSString *commitMessage;
commitMessage = [[commitTextView textStorage] string];

如何将禁用的文本框内容颜色变灰

NSTextField在禁用的时候不能自动变灰,你需要使用secondarySelectedControlColor,目的就是聚焦没有焦点的控件。

如何实现呢?

点击这里阅读全文 »

如何用程序的方式滚动至文本框结尾

以下是代码:

NSRange range;

range = NSMakeRange ([[textView string] length], 0);
 
[textView scrollRangeToVisible: range];

如何用程序的方式滚动至文本框最开头

以下是代码: 

NSRange zeroRange = { 0, 0 };
[textView scrollRangeToVisible: zeroRange];

如何限制文本框只能输入数字

在某些情况下,我们可能需要文本框只能输入数字值,或者其他特定值。这里提供了实现的方法。

 

点击这里阅读全文 »

如何用程序删除文本框中选中的文本

直接调用本句代码:

[textView delete: nil];

即可

如何在textview尾部追加文本

有两种实现方式,均可。

第一种:

NSRange range;
range = NSMakeRange ([[textView string] length], 0);
 
[textView replaceCharactersInRange: range withString: string];
 
或者第二种:
 
[[[textView textStorage] mutableString] appendString: string];

最新讨论