2016-02-12 40 views
5

Sto cercando di inserire del testo formattato in Cocoa usando l'API di accessibilità. Questo è quello che ho fatto:Inserimento di testo formattato utilizzando l'API di accessibilità in Cocoa?

NSFont *font = [NSFont fontWithName:@"Arial" size:14.0]; 
NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName]; 
NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:@"hello, world" attributes:attrsDictionary]; 
AXError error = AXUIElementSetAttributeValue(element, kAXValueDescriptionAttribute, attrString); 
// element is an instance of 'AXUIElementRef' with role 'AXTextArea' 

L'errore ottengo sempre è kAXErrorIllegalArgument (-25201). Se provo a inserire testo non formattato, allora funziona bene.

Quindi, qualcuno sa come inserire un testo formattato utilizzando l'API di accessibilità?

+0

qual è il tuo kAXValueDescriptionAttribute? –

+0

@JonasSchafft kAXValueDescriptionAttribute è una costante. – ashokgelal

+0

@kamaldeepsinghbhatia Sì, sto cercando di inserire il formato "ciao, mondo" – ashokgelal

risposta

0

Non penso che sia possibile impostare la descrizione, il valore o il titolo di una stringa attribuita. Forse è possibile ottenere la stringa attribuita con AXUIElementCopyParameterizedAttributeValue ma non c'è AXUIElementSetParameterizedAttributeValue.