今回はTableView。
少し複雑です。
http://macscripter.net/viewtopic.php?id=30313
macscripterにあったものを必要と思われる部分だけ取り出して紹介します。
・TableViewを配置
dataSourceとApp Delegateを関連付け。
・Table Columnの設定
Identifier部分にスクリプトで使う識別用の名前?を設定。
今回はセルを2つ使うので、セル2も同様に設定して下さい。
・AppDelegate.applescript
on uni01_(sender)で項目追加
on uni02_(sender)で選択項目を取得します。
スクリプトエディタで開く
script AppDelegate
property parent : class “NSObject”
property uni01 : class “NSMutableArray”
property uni02 : missing value–TableView
property uni03 : {}—セル内に入るデータ
property unicell01 : “”–1列目のセル
property unicell02 : “”–2列目のセル
on applicationWillFinishLaunching_(aNotification)—起動時に項目を追加
set uni03 to uni01’s alloc()’s init()
set uni07 to {{unicell01:“ほげ“, unicell02:“ほげもげら“}}
addObjectsFromArray_(uni07)of uni03
reloadData() of uni02
end applicationWillFinishLaunching_
on applicationShouldTerminate_(sender)
— Insert code here to do any housekeeping before your application quits
return current application’s NSTerminateNow
end applicationShouldTerminate_
on tableView_objectValueForTableColumn_row_(uni02, uni08, uni09)
if uni03’s |count|() is equal to 0 then return end
set {uni04,uni05} to {identifier of uni08,objectAtIndex_(uni09)of uni03}
return objectForKey_(uni04) of uni05
end tableView_objectValueForTableColumn_row_
on numberOfRowsInTableView_(uni02)
try
if uni03’s |count|() is equal to null then
return 0
else
return uni03’s |count|()
end if
on error
return 0
end try
end numberOfRowsInTableView_
on uni01_(sender)—項目を追加する
set uni07 to {{unicell01:“ほげほげ“, unicell02:“ほげもげ“}}
addObjectsFromArray_(uni07)of uni03
reloadData() of uni02
end uni01_
on uni02_(sender)—選択項目の取得
try
set uni10 to selectedRow() of uni02
display dialog (unicell01 of uni03’s item (uni10+1) as unicode text)
end try
end uni01_
end script