NSTableView - Accessing cell values (OS X, Cocoa)

Last edited on

Overview

This example demonstrates how to access cell values in NSTableView objects:

def main():
    ...

    tableview = waitForObject({"type": "NSTableView", "visible": "1"})

    for row in range(tableview.numberOfRows()):
        test.log("Row #%s" % row)
        for column in range(tableview.numberOfColumns()):
            test.log("Column #%s: %s" % (column, get_tableview_column(tableview, row, column)))

def get_tableview_column(tableview, row_index, column_index):
    tableview = waitForObject(tableview)
    if not isNull(tableview.dataSource):
        tablecolumn = tableview.tableColumns().objectAtIndex_(column_index)
        datasource = tableview.dataSource
        return datasource.tableView_objectValueForTableColumn_row_(tableview, tablecolumn, row_index)
    else:
        return tableview.preparedCellAtColumn_row_(column_index, row_index).stringValue
test.py

NSTableView Class Reference

NSTableViewDataSource Protocol Reference

NSTableColumn Class Reference

NSCell Class Reference