■Cell

セルを表すオブジェクトです。

●イベント

イベント名 

 使用可能なセル型

 発生タイミング

valuechanged

すべてのセル型

セルの値が変更されたとき。

click

標準、ボタン、ハイパーリンク、画像

セルがクリックされたとき。

mouseenter

標準、ボタン、ハイパーリンク、画像

マウスなどのポインティングデバイスがセルの領域内に入ったとき。

mouseleave

標準、ボタン、ハイパーリンク、画像

マウスなどのポインティングデバイスがセルの領域内から外に出たとき。

pivottableClick 

ピボットテーブル

ピボットテーブルのデータ領域がクリックされたとき。

selectionchanged

コンボボックス、ユーザー選択コンボボックス

選択項目が変更されたとき。

 

pivottableClick イベント

ピボットテーブル型セルのデータ領域がクリックされたときに発生します。イベント発生時に実行される関数の第2パラメーターは次のように定義されます。

パラメーター

class PivotTableEventParameter {
    public dataType: string; //クリックした場所が通常のデータ領域の場合は「Data」、列の総計セルの場合は「ColTotal」、行の総計セルの場合は「RowTotal」となります。
    public row: number; //クリックしたセルの行インデックスです。値はゼロオリジンとなります。
    public col: number; //クリックしたセルの列インデックスです。値はゼロオリジンとなります。
    public value: any; //クリックしたセルの値です。
    public colHeaders: Array<HeaderInfo>; //クリックしたセルの列ヘッダー情報(PivotTableHeaderInfo配列)です。
    public rowHeaders: Array<HeaderInfo>; //クリックしたセルの行ヘッダー情報(PivotTableHeaderInfo配列)です。
}

export class PivotTableHeaderInfo {
    public label: string; //ヘッダーのフィールド名
    public header: string; //ヘッダーの値
}

サンプルコード

(function () {
    var p = Forguncy.Page;
    p.ready(function () {
        var pivottable = p.getCell("pivottablecell");
        pivottable.bind("pivottableClick", function (e, param) {
            if (param.dataType === "Data") {
                let message = "セルの位置(" + param.row + "、" + param.col + ")がクリックされました。\n";
                message += "列ヘッダー:\n"
                for (let i = 0; i < param.colHeaders.length; i++) {
                    message += param.colHeaders[i].label + " : " + param.colHeaders[i].header + "\n";
                }
                message += "行ヘッダー:";
                message += "\n";
                for (let j = 0; j < param.rowHeaders.length; j++) {
                    message += param.rowHeaders[j].label + " : " + param.rowHeaders[j].header + "\n";
                }
                message += "値:" + param.value;
                alert(message)
            } else if (param.dataType === "RowTotal") {
                let message = param.row + "行目の総計セルがクリックされました。\n";
                message += "行ヘッダー:\n";
                for (let j = 0; j < param.rowHeaders.length; j++) {
                    message += param.rowHeaders[j].label + ":" + param.rowHeaders[j].header + "\n";
                }
                message += "値:" + param.value;
                alert(message)
            } else if (param.dataType === "ColTotal") {
                let message = param.col + "列目の総計セルがクリックされました。\n";
                message += "列ヘッダー:\n"
                for (let i = 0; i < param.colHeaders.length; i++) {
                    message += param.colHeaders[i].label + ":" + param.colHeaders[i].header + "\n";
                }
                message += "値:" + param.value;
                alert(message)
            } 
        });
    });
})()

 

●イベントハンドラの処理

.bind( evenType [, eventData ], handler )

セルが持つイベントに対してイベントハンドラを紐づけます。

標準アクションの停止

紐づけたイベントの元々の動作をキャンセルするには、戻り値にfalseを返します。これにより、イベントバブリングも停止されるため、親要素が持つイベントの発生もキャンセルされます。

イベントへのデータの受け渡し

イベントハンドラにデータを受け渡すには、第2パラメーターに指定します。その場合、イベントハンドラは第3パラメーターに指定します。 受け渡されたデータは、イベントハンドラに渡されるjQueryイベントオブジェクトのdataプロパティから参照できます。

パラメーター

eventType

Type: String

紐づけするイベントを表す文字列。

eventData(オプション)

Type: Anything

イベントハンドラに渡すデータ。関数ではパラメーターであるjQueryイベントオブジェクトのdataプロパティから参照します。

handler

Type: Function( Event eventObject )

イベント発生時に実行される関数。

 

戻り値

なし 

.unbind( eventType [, handler ] ) 

指定したイベントハンドラの紐づけを削除します。第2パラメーターを省略した場合、指定イベントに紐づけされたすべてのイベントハンドラが削除されます。

パラメーター

eventType

Type: String

紐づけを削除するイベントを表す文字列。

handler(オプション)

Type: Function( Event eventObject )

紐づけを削除するイベントハンドラの関数。

 

戻り値

なし 

.unbindAll()

要素からすべてのイベントハンドラを削除します。

戻り値

なし 

●メソッド

.disable()

セルのユーザーとの対話を無効化します。

戻り値

なし

.enable()

セルのユーザーとの対話を有効化します。

戻り値

なし

.getActiveTabIndex()

タブコントロール内の現在のタブの番号を取得します。このメソッドは、セル型がタブコントロールの場合にのみ使用できます。

戻り値

Number

サンプルコード

var tabControlCell = Forguncy.Page.getCell("tabControl"); //tabControlはタブコントロールのセルの名前です。
var activeTabIndex = tabControlCell.getActiveTabIndex(); //現在のタブの番号を取得します。番号は0から始まります。

 

.getContentPage()

ページコンテナの子ページとなるSubPageオブジェクトを取得します。このメソッドは、セル型がコンテナーの場合にのみ使用できます。

戻り値

SubPage

サンプルコード

Forguncy.Page.ready(function () {
    var containerCell = Forguncy.Page.getCell("container");//containerはコンテンツコンテナのセルの名前です。
    containerCell.bind("loaded", function () {
        alert("containerCell loaded"); // サブページが作成されたら、1つのメッセージをアラートします。
        var subPage = containerCell.getContentPage();//サブページでセルまたは listview を取得する必要がある場合は、まずsubPageInfo を取得する必要があります。
        if (subPage.getPageName() === "SubPage1") {
            var subPageCell = subPage.getCell("cell1");//SubPage1という名前のサブページ内のセル
            var subPageListview = subPage.getListView("ListView1");//SubPage1という名前のサブページのリストビュー
        }
    });
     containerCell.bind("PageDefaultDataLoaded", function () {
        alert("containerCellデータがロードされました。"); // サブページが作成され、すべてのデータがロードされた後、1つのメッセージをアラートします。
    });
});

 

.getTabCount()

タブコントロール内のタブの数を取得します。このメソッドは、セル型がタブコントロールの場合にのみ使用できます。

戻り値

Number

サンプルコード

var tabControlCell = Forguncy.Page.getCell("tabControl");//tabControlはタブコントロールのセルの名前です。
var tabCount = tabControlCell.getTabCount();

 

.getTabPage( tabIndex )

タブコントロール内の子ページとなるSubPageオブジェクトを取得します。このメソッドは、セル型がタブコントロールの場合にのみ使用できます。

パラメーター

tabIndex

Type: Number

タブの番号。0~始まります。

戻り値

SubPage

サンプルコード

var tabControlCell = Forguncy.Page.getCell("tabControl");//tabControlはタブコントロールのセルの名前です。
var tab1 = tabControlCell.getTabPage(0);//タブ内のセルまたはリストビューを取得する必要がある場合は、まずタブ内のサブページの情報を取得する必要があります。 タブ番号は0から始まります。
var subPageCell = tab1.getCell("cell1");//サブページ内のcell1という名前のセルを取得します。
var subPageListview = tab1.getListView("ListView1");//サブページ内のListView1というリストビューを取得します。

 

.getValue()

セルの値を取得します。

戻り値

Anything

.hide()

セルを非表示にします。

戻り値

なし

.setBackColor( color )

セルの背景色を設定します。

パラメーター

color

Type: Anything

設定する背景色の色。"red"や"#FF0000"などの値を指定。

 

.setForeColor( color )

セルの文字色を設定します。

パラメーター

color

Type: Anything

設定する文字色の色。"red"や"#FF0000"などの値を指定。

 

.setValue( value )

セルに値を設定します。本メソッドは、添付ファイル型セル、画像アップロード型セル、ログインユーザー型セルでは使用できません。

パラメーター

value

Type: Anything

設定するセルの値。

 

戻り値

なし

.show()

非表示となっているセルを表示します。

戻り値

なし

.showTab( tabIndex )

タブコントロール内の非表示となっているタブを表示します。このメソッドは、セル型がタブコントロールの場合にのみ使用できます。

パラメーター

tabIndex

Type: Number

タブの番号。0~始まります。

戻り値

なし

サンプルコード

var tabControlCell = Forguncy.Page.getCell("tabControl");//tabControlはタブコントロールのセルの名前です。
tabControlCell.showTab(1);//タブコントロールで表示しているタブを2番目のタブに変更し、タブ番号を0から開始します。