[]
        
(Showing Draft Content)

GC.Spread.Sheets.Filter.HideRowFilter

クラス: HideRowFilter

Sheets.Filter.HideRowFilter

Hierarchy

Table of contents

コンストラクタ

プロパティ

メソッド

コンストラクタ

constructor

new HideRowFilter(range?)

デフォルト行フィルタを表します。

実例

// 次のサンプルコードは、新しいフィルタを作成します。
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(0,0,4,4)));
sheet.repaint();

パラメータ

名前
range? Range

オーバーライド

RowFilterBase.constructor

プロパティ

extendedRange

extendedRange: Range

行フィルターの拡張範囲を表します。

継承元

RowFilterBase.extendedRange


range

range: Range

行フィルタの範囲を表します。

継承元

RowFilterBase.range


typeName

typeName: string

シリアル化のサポートに使用される型名の文字列を表します。

継承元

RowFilterBase.typeName

メソッド

addFilterItem

addFilterItem(col, condition): void

指定したフィルタを行フィルタに追加します。

実例

sheet.setRowCount(3);
sheet.setColumnCount(1);
sheet.setArray(0, 0,
    [
        [ 1 ],
        [ 2 ],
        [ 3 ]
    ]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, {compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,expected: '3'});
sheet.rowFilter().addFilterItem(0, condition);
sheet.rowFilter().filter(0);

パラメータ

名前 説明
col number 列インデックス。
condition Condition | Condition[] フィルタリングする条件。

戻り値

void

継承元

RowFilterBase.addFilterItem


filter

filter(col?): void

指定した列をフィルタリングします。

実例

sheet.setRowCount(2);
sheet.setColumnCount(1);
sheet.setArray(0, 0,
    [
        [ "a" ],
        [ "b" ]
    ]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, {compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,expected: 'a'});
var rowFilter = sheet.rowFilter();
rowFilter.addFilterItem(0, condition);
rowFilter.filter(0);

パラメータ

名前 説明
col? number フィルタリングする列のインデックス。これを省略した場合、範囲内のすべての列がフィルタリングされます。

戻り値

void

継承元

RowFilterBase.filter


filterButtonVisible

filterButtonVisible(col?, value?): any

シート列のフィルタボタンが表示されるかどうかを取得または設定します。

実例

sheet.setArray(2, 2,
    [
        [ 1, 4 ],
        [ 2, 5 ],
        [ 3, 6 ]
    ] );
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(2, 2, 3, 2)));
console.log(sheet.rowFilter().filterButtonVisible()); // true
sheet.rowFilter().filterButtonVisible(2, false);
console.log(sheet.rowFilter().filterButtonVisible(2)); // false
console.log(sheet.rowFilter().filterButtonVisible(3)); // true

パラメータ

名前
col? number | boolean
value? boolean

戻り値

any

 パラメーターなし: すべてのフィルタボタンが表示されない場合はfalse、それ以外の場合はtrue。
 パラメーター1個(col): 指定した列のフィルタボタンが表示されない場合はfalse、それ以外の場合はtrue。
 パラメーター1個(value): <c>GC.Spread.Sheets.Filter.RowFilterBase</c>がすべてのフィルタボタンを表示(true)または非表示(false)に設定します。
 パラメーター2個(col、value): <c>GC.Spread.Sheets.Filter.RowFilterBase</c>が指定した列のフィルタボタンを表示(true)または非表示(false)に設定します。

継承元

RowFilterBase.filterButtonVisible


filterDialogVisibleInfo

filterDialogVisibleInfo(visibleInfo?): any

行フィルタの表示/非表示情報を取得または設定します。

実例

// 次のサンプルコードは、行フィルタを作成します。
 sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(1, 1, 10, 3)));
 var filter = sheet.rowFilter();
 filter.filterDialogVisibleInfo({
     sortByValue : false,
     sortByColor : true,
     filterByColor : true,
     filterByValue : true,
     listFilterArea : false
 });

パラメータ

名前
visibleInfo? IFilterDialogVisibleInfo

戻り値

any

値が設定されていない場合、フィルタダイアログに情報が表示されます。 値が設定されている場合は、HideRowFilterを返します。


fromJSON

fromJSON(settings): void

指定したJSON文字列からオブジェクト状態をロードします。

パラメータ

名前 説明
settings Object 逆シリアル化された行フィルタのデータ。

戻り値

void

継承元

RowFilterBase.fromJSON


getFilterItems

getFilterItems(col): Condition[]

指定した列のフィルタを取得します。

実例

sheet.getCell(0, 0).value("a");
sheet.getCell(0, 1).value("b");
sheet.getCell(1, 0).value("ac");
sheet.getCell(1, 1).value("bd");
sheet.rowFilter( new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range( -1, -1, -1, -1)));
var condition1 =  new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,expected: 'a' });
var condition2 = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,beginsWith: '' });
sheet.rowFilter().addFilterItem(0, condition1);
sheet.rowFilter().addFilterItem(1, condition2);
console.log(sheet.rowFilter().getFilterItems(0)); // 結果は配列、長さは 1、項目は条件 1 に等しいです。

パラメータ

名前 説明
col number 列インデックス。

戻り値

Condition[]

指定した列に属する条件を含むコレクションを返します。

継承元

RowFilterBase.getFilterItems


getFilteredItems

getFilteredItems(): Condition[]

すべての適用済みフィルタ条件を取得します。

実例

sheet.setRowCount(3);
sheet.setColumnCount(2);
sheet.setArray(0, 0,
    [
        [ 1, 2 ],
        [ 3, 4 ],
        [ 5, 6 ]
    ]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.numberCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.GeneralComparisonOperators.greaterThan, expected: 1 });
var condition1 = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.numberCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.GeneralComparisonOperators.greaterThan, expected: 4 });
sheet.rowFilter().addFilterItem(0, condition);
sheet.rowFilter().addFilterItem(1, condition1);
console.log(sheet.rowFilter().getFilteredItems().length); // 0
sheet.rowFilter().filter();
console.log(sheet.rowFilter().getFilteredItems().length); // 2
sheet.rowFilter().removeFilterItems(0);
console.log(sheet.rowFilter().getFilteredItems().length); // 1
sheet.rowFilter().removeFilterItems(1);
console.log(sheet.rowFilter().getFilteredItems().length); // 0

戻り値

Condition[]

すべての適用済みフィルタ条件を含むコレクションを返します。

継承元

RowFilterBase.getFilteredItems


getSortState

getSortState(col): SortState

現在のソート状態を取得します。

実例

sheet.setArray(0, 0, [
    [ 4 ],
    [ 3 ],
    [ 2 ],
    [ 1 ],
    [ 0 ]
]);
sheet.rowFilter( new GC.Spread.Sheets.Filter.HideRowFilter( new GC.Spread.Sheets.Range( 0, 0, 5, 1 ) ) );
sheet.rowFilter().addFilterItem( 0, new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.numberCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.GeneralComparisonOperators.greaterThan, expected: 2 }));
sheet.rowFilter().filter(0);
sheet.rowFilter().sortColumn(0, false);
console.log(sheet.rowFilter().getSortState(0)); // 2

パラメータ

名前 説明
col number 列インデックス。

戻り値

SortState

現在のフィルタのソート状態。

継承元

RowFilterBase.getSortState


isFiltered

isFiltered(col?): boolean

行または指定した列がフィルタリングされているかどうかを示す値を取得します。

実例

// 次のサンプルコードは、isFilteredメソッドを使用します。
activeSheet.setValue(0, 0, "North");
activeSheet.setValue(1, 0, "South");
activeSheet.setValue(2, 0, "East");
activeSheet.setValue(3, 0, "South");
activeSheet.setValue(4, 0, "North");
activeSheet.setValue(5, 0, "North");
activeSheet.setValue(6, 0, "West");
activeSheet.setColumnWidth(0, 80);
// 行フィルタを設定します。
activeSheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(0, 0, 7, 1)));
// ボタン
$("#button1").click(function () {
    var rowFilter = spread.getActiveSheet().rowFilter();
    if (rowFilter.isFiltered(0)) {
        alert("Row-filtering executed for Column1");
    } else {
        alert("Row-filtering not executed for Column1");
    }
});
// ボタンコントロールをページを追加します。
<input type="button" id="button1" value="button1"/>

パラメータ

名前
col? number

戻り値

boolean

パラメーターなし: 一部の行がフィルタリングされている場合はtrue、それ以外の場合はfalse。パラメーター1個(col): 指定した列がフィルタリングされている場合はtrue、それ以外の場合はfalse

継承元

RowFilterBase.isFiltered


isRowFilteredOut

isRowFilteredOut(row): boolean

指定した行がフィルタに一致していないかどうかを判断します。

実例

sheet.setRowCount(2);
sheet.setColumnCount(1);
sheet.setArray(0, 0,
    [
        [ 1 ],
        [ 2 ]
    ] );
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, {compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,expected: '2'});
sheet.rowFilter().addFilterItem(0, condition);
sheet.rowFilter().filter(0);
sheet.addRows(1, 1);
console.log(sheet.rowFilter().isFiltered()); // true
console.log(sheet.rowFilter().isRowFilteredOut(0)); // true
console.log(sheet.rowFilter().isRowFilteredOut(1)); // false

パラメータ

名前 説明
row number 行インデックス。

戻り値

boolean

行がフィルタに一致していない場合はtrue、それ以外の場合はfalse

継承元

RowFilterBase.isRowFilteredOut


onFilter

onFilter(args): void

列がフィルタリングまたはフィルタリング解除されたときにアクションを実行します。

実例

sheet.setRowCount(3);
sheet.setColumnCount(2);
sheet.setArray(0, 0,
    [
        [ 1, 2 ],
        [ 3, 4 ],
        [ 5, 6 ]
    ]);
function HighLightFilter(range) {
    GC.Spread.Sheets.Filter.RowFilterBase.call(this, range);
}
HighLightFilter.prototype = new  GC.Spread.Sheets.Filter.RowFilterBase(new GC.Spread.Sheets.Range(-1, -1, -1, -1));
var doFilterCalled = false;
HighLightFilter.prototype.onFilter = function(args) {
    if ( args.action ===  GC.Spread.Sheets.Filter.FilterActionType.filter ) {
        doFilterCalled = true;
    }
};
sheet.rowFilter(new HighLightFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.numberCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.GeneralComparisonOperators.greaterThan, expected: 1 });
sheet.rowFilter().addFilterItem(0, condition);
sheet.rowFilter().filter();
console.log(doFilterCalled); // true

パラメータ

名前 説明
args IFilteredArgs actionsheetrangefilteredRowsfilteredOutRowsを含むオブジェクト。

戻り値

void

継承元

RowFilterBase.onFilter


openFilterDialog

openFilterDialog(filterButtonHitInfo): void

ユーザーがフィルタボタンをクリックしたときにフィルタダイアログを開きます。

実例

sheet.setRowCount(3);
sheet.setColumnCount(2);
sheet.setArray(0, 0,
    [
        [ 1, 2 ],
        [ 3, 4 ],
        [ 5, 6 ]
    ]);
function HighLightFilter(range) {
    GC.Spread.Sheets.Filter.RowFilterBase.call(this, range);
}
HighLightFilter.prototype = new  GC.Spread.Sheets.Filter.RowFilterBase(new GC.Spread.Sheets.Range(-1, -1, -1, -1));
HighLightFilter.prototype.openFilterDialog = function(args) {
    console.log(args.row, args.col);
};
sheet.rowFilter(new HighLightFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));

パラメータ

名前 説明
filterButtonHitInfo IFilterButtonHitInfo フィルタボタンに関するヒットテスト情報。

戻り値

void

継承元

RowFilterBase.openFilterDialog


removeFilterItems

removeFilterItems(col): void

指定したフィルタを削除します。

実例

sheet.setRowCount(3);
sheet.setColumnCount(1);
sheet.setArray(0, 0,
    [
        [ 1 ],
        [ 2 ],
        [ 3 ]
    ]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range( -1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, {compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo, expected: '3'});
var rowFilter = sheet.rowFilter();
rowFilter.addFilterItem(0, condition);
rowFilter.removeFilterItems(0);

パラメータ

名前 説明
col number 列インデックス。

戻り値

void

継承元

RowFilterBase.removeFilterItems


reset

reset(): void

すべてのフィルタをクリアします。

実例

sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
sheet.rowFilter().reset();
console.log(sheet.rowFilter().isFiltered()); // false

戻り値

void

継承元

RowFilterBase.reset


sortColumn

sortColumn(col, ascending): void

指定した列を指定した順にソートします。

実例

sheet.setArray(0, 0, [
    [ 4 ],
    [ 3 ],
    [ 2 ],
    [ 1 ],
    [ 0 ]
]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(0, 0, 5, 1)));
sheet.rowFilter().addFilterItem(0, new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.numberCondition, { compareType: GC.Spread.Sheets.ConditionalFormatting.GeneralComparisonOperators.greaterThan, expected: 2 }));
sheet.rowFilter().filter(0);
sheet.rowFilter().sortColumn(0, true);

パラメータ

名前 説明
col number 列インデックス。
ascending boolean 昇順にソートする場合、trueに設定します。

戻り値

void

継承元

RowFilterBase.sortColumn


toJSON

toJSON(): Object

オブジェクト状態をJSON文字列に保存します。

戻り値

Object

行フィルタのデータ。

継承元

RowFilterBase.toJSON


unfilter

unfilter(col?): void

指定した列からフィルタを削除します。

実例

sheet.setRowCount(2);
sheet.setColumnCount(1);
sheet.setArray(0, 0,
    [
        [ "a" ],
        [ "b" ]
    ]);
sheet.rowFilter(new GC.Spread.Sheets.Filter.HideRowFilter(new GC.Spread.Sheets.Range(-1, -1, -1, -1)));
var condition = new GC.Spread.Sheets.ConditionalFormatting.Condition(GC.Spread.Sheets.ConditionalFormatting.ConditionType.textCondition, {compareType: GC.Spread.Sheets.ConditionalFormatting.TextCompareType.equalsTo,expected: 'a'});
var rowFilter = sheet.rowFilter();
rowFilter.addFilterItem(0, condition);
rowFilter.unfilter();

パラメータ

名前
col? number

戻り値

void

継承元

RowFilterBase.unfilter