# GC.Spread.Sheets.StatusBar.StatusBar

## Content

# Class: StatusBar

[Sheets](../modules/GC.Spread.Sheets).[StatusBar](../modules/GC.Spread.Sheets.StatusBar).StatusBar

## Table of contents

### Constructors

- [constructor](GC.Spread.Sheets.StatusBar.StatusBar#constructor)

### Methods

- [add](GC.Spread.Sheets.StatusBar.StatusBar#add)
- [all](GC.Spread.Sheets.StatusBar.StatusBar#all)
- [bind](GC.Spread.Sheets.StatusBar.StatusBar#bind)
- [dispose](GC.Spread.Sheets.StatusBar.StatusBar#dispose)
- [get](GC.Spread.Sheets.StatusBar.StatusBar#get)
- [remove](GC.Spread.Sheets.StatusBar.StatusBar#remove)
- [unbind](GC.Spread.Sheets.StatusBar.StatusBar#unbind)
- [update](GC.Spread.Sheets.StatusBar.StatusBar#update)

## Constructors

### <a id="constructor" name="constructor"></a> constructor

• **new StatusBar**(`host`, `options?`)

Represents status bar.

**`example`**
```
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'),
  {items: [new GC.Spread.Sheets.StatusBar.StatusItem('labelItem', {menuContent: 'label'})]});
```

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `host` | `HTMLElement` | The DOM Element. |
| `options?` | [`IStatusBarOptions`](../interfaces/GC.Spread.Sheets.StatusBar.IStatusBarOptions) | - |

## Methods

### <a id="add" name="add"></a> add

▸ **add**(`item`, `position`): `boolean`

Add the item instance to the StatusBar.

**`example`**
```
let StatusItem = GC.Spread.Sheets.StatusBar.StatusItem;
let spanItem = new StatusItem('spanItemName', {menuContent: 'span', value: 'spanValue'});
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
statusBar.add(spanItem);
```

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `item` | [`StatusItem`](GC.Spread.Sheets.StatusBar.StatusItem) | The instance of the child of StatusItem. The child extends from StatusItem. |
| `position` | `number` | The position is items index in all items array. Start from 0. Items display position is also related to align. If position is invalid or undefine, place it by default. |

#### Returns

`boolean`

Add item result. Return true if add success, else failed.

___

### <a id="all" name="all"></a> all

▸ **all**(): [`StatusItem`](GC.Spread.Sheets.StatusBar.StatusItem)[]

Get all item list.

**`example`**
```
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
let itemList = statusBar.all();
statusBar.remove(itemList[0]);
```

#### Returns

[`StatusItem`](GC.Spread.Sheets.StatusBar.StatusItem)[]

The item list on statusbar.

___

### <a id="bind" name="bind"></a> bind

▸ **bind**(`context`): `void`

Bind the context of the StatusBar.

**`example`**
```
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
```

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `context` | [`Workbook`](GC.Spread.Sheets.Workbook) | The context of the StatusBar. The context can trigger the status change of StatusBar. Here the context is the instance of GC.Spread.Sheets.Workbook. |

#### Returns

`void`

___

### <a id="dispose" name="dispose"></a> dispose

▸ **dispose**(): `void`

Dispose the StatusBar and unbind all events.

**`example`**
```
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
// do something
statusBar.dispose();
```

#### Returns

`void`

___

### <a id="get" name="get"></a> get

▸ **get**(`itemName`): [`StatusItem`](GC.Spread.Sheets.StatusBar.StatusItem)

Get the item by item name.

**`example`**
```
let StatusItem = GC.Spread.Sheets.StatusBar.StatusItem;
let spanItemName = 'spanItemName';
let spanItem = new StatusItem(spanItemName, {menuContent: 'span', value: 'spanValue'});
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
statusBar.add(spanItem);
let spanItemInstance = statusBar.get(spanItemName);
```

#### Parameters

| Name | Type |
| :------ | :------ |
| `itemName` | `string` |

#### Returns

[`StatusItem`](GC.Spread.Sheets.StatusBar.StatusItem)

The StatusItem whose itemName is specified.

___

### <a id="remove" name="remove"></a> remove

▸ **remove**(`itemName`): `boolean`

Remove the item from the StatusBar.

**`example`**
```
let StatusItem = GC.Spread.Sheets.StatusBar.StatusItem;
let spanItemName = 'spanItemName';
let spanItem = new StatusItem(spanItemName, {menuContent: 'span', value: 'spanValue'});
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
statusBar.add(spanItem);
// do something
statusBar.remove(spanItemName);
```

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `itemName` | `string` | The name of the StatusItem. |

#### Returns

`boolean`

If true means remove success, else failed.

___

### <a id="unbind" name="unbind"></a> unbind

▸ **unbind**(): `void`

Unbind the context of the StatusBar.

**`example`**
```
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.bind(spread);
// do something
statusBar.unbind();
```

#### Returns

`void`

___

### <a id="update" name="update"></a> update

▸ **update**(): `void`

Update the StatusBar.

**`example`**
```
let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
let statusBar = new GC.Spread.Sheets.StatusBar.StatusBar(document.getElementById('statusBar'));
statusBar.update();
```

#### Returns

`void`
