2012-05-19 2 views
3

У меня есть NSTextView, где я бы хотел использовать пробелы вместо вкладок. Я, хотя я бы replaceOccurrencesOfString:withString:options:range: в textStorageWillProcessEditing: моего textview delegate, но он не работает (отмена разрыва).NSTextView: заменить все вкладки

Пожалуйста, кто-нибудь знает, как реализовать такую ​​функциональность? Есть ли другой способ сделать это?

Edit: это то, что у меня есть в методе textStorageWillProcessEditing::

ts = [notification object]; 
[[ts mutableString] replaceOccurrencesOfString:@"\t" 
            withString:@" " 
             options:NSLiteralSearch 
             range:[ts editedRange]]; 
+0

Я подозреваю, что вы очень близки к тому, чтобы заставить работать. Если у вас есть дескриптор текстового хранилища текстового представления, вы можете выполнить вызов «replaceOccurrencesOfString:». Измените этот вопрос, чтобы показать код того, что вы сделали до сих пор, и если он все еще не работает, я постараюсь ответить на него за вас (если кто-то еще не приходит и не отвечает сначала). –

+0

@MichaelDautermann: Совершено, спасибо! –

+0

Как именно это отменить? Кажется, ваш код работает нормально. – omz

ответ

0

Вы можете переопределить в KeyUp: метод. Если event.keyCode == keycodefortabwhichidontknow :) , тогда вы можете вставить четыре пробела.

И если еще, конечно, просто позвоните [super keyDown: theEvent];

Смежные вопросы