|Type||Topic||Plugin||Version||macOS||Windows||Linux||Console & Web||iOS|
|class||Addressbook||MBS MacCocoa Plugin||7.1||Yes||No||No||Yes, macOS only||No|
// shows all websites with labels
dim a as new ABAddressBookMBS
dim p as ABPersonMBS = a.owner
dim m as ABMultiValueMBS = p.valueForProperty(a.kABURLsProperty)
dim u as Integer = m.count-1
for i as Integer = 0 to u
dim label as string = m.labelAtIndex(i)
dim value as string = m.valueAtIndex(i)
MsgBox label+" -> "+value
All values in an ABMultiValue must be of the same type (kABMultiStringProperty: all values must be strings....)
In case your application needs to store away a reference to a specific value/label pair, use the identifier. Index won't work in this case because any client can add/remove/reorder a multivalue making your index point to the wrong pair. Identifiers are unique Ids.
All methods in this class will catch exceptions from Cocoa and raise a NSExceptionMBS instead. Using the message, name and reason properties you can see what was the reason for this exception. Please report if you find a method which does not handle exceptions correct.
This is an abstract class. You can't create an instance, but you can get one from various plugin functions.
- 7 properties
- 13 methods
- method Constructor
- method copy as ABMultiValueMBS
- method edit as ABMutableMultiValueMBS
- method identifierAtIndex(index as UInt32) as string
- method identifiers as string()
- method indexForIdentifier(identifier as string) as UInt32
- method labelAtIndex(index as UInt32) as string
- method labelForIdentifier(identifier as string) as string
- method labels as string()
- method valueAtIndex(index as UInt32) as Variant
- method valueForIdentifier(identifier as string) as Variant
- method valueForLabel(label as string) as Variant
- method values as Variant()
The items on this page are in the following plugins: MBS MacCocoa Plugin.
MBS FileMaker blog