# RuntimeTabPanel

## Overview

The `IScriptTabPanelMethods` is a scripting interface for RuntimeTabPanel. Combines (deprecated) script methods and java api (IRuntimeTabPanel).

## **Extends**

[RuntimeComponent](https://docs.servoy.com/reference/servoycore/dev-api/forms/runtimeform/elements/runtimecomponent)

## Properties Summarized

| Type                                                                           | Name                        | Summary                                                                                                                                                |
| ------------------------------------------------------------------------------ | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [bgcolor](#bgcolor)         | Gets or sets the background color of a field.                                                                                                          |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [border](#border)           | Gets or sets the border attribute(s) of a specified element.                                                                                           |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [enabled](#enabled)         | Gets or sets the enabled state of a specified field, also known as "grayed".                                                                           |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [fgcolor](#fgcolor)         | Gets or sets the foreground color of a field.                                                                                                          |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [font](#font)               | Gets or sets the font name, style, and size of an element.                                                                                             |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [readOnly](#readonly)       | Gets or sets the editable/read-only state of a field; true - read-only; false - editable; ! - the editable/read-only state is inverted (the opposite). |
| [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object)   | [tabIndex](#tabindex)       | Gets or sets the selected tab index for the specified tabpanel.                                                                                        |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [toolTipText](#tooltiptext) | Gets or sets the tool tip text of an element; text displays when the mouse cursor hovers over an element.                                              |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [transparent](#transparent) | Gets or sets the transparency of an element; true - transparent; false - not transparent.                                                              |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [visible](#visible)         | Gets or sets the visibility of an element; true - visible; false - not visible; ! - the visibility state is inverted (the opposite).                   |

## Methods Summarized

| Type                                                                           | Name                                                                                                                                                                                               | Summary                                                                                       |
| ------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| void                                                                           | [addStyleClass(styleName)](#addstyleclass-stylename)                                                                                                                                               | Adds a style to the styleClass property.                                                      |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [addTab(form/formname, name, tabText, tooltip, iconURL, fg, bg, relatedfoundset/relationname, index)](#addtab-form/formname-name-tabtext-tooltip-iconurl-fg-bg-relatedfoundset/relationname-index) | Adds a relationless or related form as a tab in a specified tabpanel.                         |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getAbsoluteFormLocationY()](#getabsoluteformlocationy)                                                                                                                                            | Returns the absolute form (designed) Y location.                                              |
| [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object)   | [getClientProperty(key)](#getclientproperty-key)                                                                                                                                                   | Gets the specified client property for the element based on a key.                            |
| [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object)   | [getDesignProperties()](#getdesignproperties)                                                                                                                                                      | Get the design-time properties of an element.                                                 |
| [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object)   | [getDesignTimeProperty(key)](#getdesigntimeproperty-key)                                                                                                                                           | Get a design-time property of an element.                                                     |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getElementType()](#getelementtype)                                                                                                                                                                | Returns the type of a specified element.                                                      |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getFormName()](#getformname)                                                                                                                                                                      | Returns the name of the form.                                                                 |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getHeight()](#getheight)                                                                                                                                                                          | Returns the height of the current element.                                                    |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getLocationX()](#getlocationx)                                                                                                                                                                    | Returns the x location of the current element.                                                |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getLocationY()](#getlocationy)                                                                                                                                                                    | Returns the y location of the current element.                                                |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getMaxTabIndex()](#getmaxtabindex)                                                                                                                                                                | Returns the maximum tab index for a specified tabpanel.                                       |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getMnemonicAt(i)](#getmnemonicat-i)                                                                                                                                                               | Returns the mnemonic for a specified tab of a tabpanel.                                       |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getName()](#getname)                                                                                                                                                                              | Returns the name of an element.                                                               |
| [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array)     | [getStyleClasses()](#getstyleclasses)                                                                                                                                                              | Return style classes of the element.                                                          |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getTabFGColorAt(i)](#gettabfgcolorat-i)                                                                                                                                                           | Returns the foreground color for a specified tab of a tabpanel.                               |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getTabFormNameAt(i)](#gettabformnameat-i)                                                                                                                                                         | Returns the form name for a specified tab of a tabpanel.                                      |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getTabNameAt(i)](#gettabnameat-i)                                                                                                                                                                 | Returns the name - the "name" design time property value - for a specified tab of a tabpanel. |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getTabRelationNameAt(i)](#gettabrelationnameat-i)                                                                                                                                                 | Returns the relation name for a specified tab of a tabpanel.                                  |
| [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)   | [getTabTextAt(i)](#gettabtextat-i)                                                                                                                                                                 | Returns the text for a specified tab of a tabpanel.                                           |
| [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number)   | [getWidth()](#getwidth)                                                                                                                                                                            | Returns the width of the current element.                                                     |
| void                                                                           | [hasStyleClass(styleName)](#hasstyleclass-stylename)                                                                                                                                               | Check if an element already has a style from the styleClass property.                         |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [isTabEnabledAt(i)](#istabenabledat-i)                                                                                                                                                             | Returns the enabled status of a specified tab in a tabpanel.                                  |
| void                                                                           | [putClientProperty(key, value)](#putclientproperty-key-value)                                                                                                                                      | Sets the value for the specified element client property key.                                 |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [removeAllTabs()](#removealltabs)                                                                                                                                                                  | Removes all tabs for a specified tabpanel.                                                    |
| void                                                                           | [removeStyleClass(styleName)](#removestyleclass-stylename)                                                                                                                                         | Removes a style from the styleClass property.                                                 |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [removeTabAt(index)](#removetabat-index)                                                                                                                                                           | Removes a specified tab in a tabpanel; can be based on a relation or relationless.            |
| void                                                                           | [setLocation(x, y)](#setlocation-x-y)                                                                                                                                                              | Sets the location of an element.                                                              |
| void                                                                           | [setMnemonicAt(index, text)](#setmnemonicat-index-text)                                                                                                                                            | Sets the mnemonic for a specified tab in a tabpanel.                                          |
| void                                                                           | [setSize(width, height)](#setsize-width-height)                                                                                                                                                    | Sets the size of an element.                                                                  |
| void                                                                           | [setTabEnabledAt(i, b)](#settabenabledat-i-b)                                                                                                                                                      | Sets the status of a specified tab in a tabpanel.                                             |
| void                                                                           | [setTabFGColorAt(i, s)](#settabfgcolorat-i-s)                                                                                                                                                      | Sets the foreground color for a specified tab in a tabpanel.                                  |
| void                                                                           | [setTabTextAt(index, text)](#settabtextat-index-text)                                                                                                                                              | Sets the text for a specified tab in a tabpanel.                                              |

## Properties Detailed

### bgcolor

Gets or sets the background color of a field. The color has to be set using the hexadecimal RGB value as used in HTML.\
It only returns it's correct value if it was explicitly set.

**Type**\
[String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)

**Sample**

```js
//sets the background color of the field
myElement.bgcolor = "#FFFFFF";
//gets the background color of the field
var c = myElement.bgcolor;
```

### border

Gets or sets the border attribute(s) of a specified element.

The border attributes:

borderType - EmptyBorder, EtchedBorder, BevelBorder, LineBorder, TitleBorder, MatteBorder, SpecialMatteBorder.\
size - (numeric value) for: bottom, left, right, top.\
color - (hexadecimal value) for: bottom, left, right, top.\
dash pattern - (numeric value) for selected side(s).\
rounding radius - (numeric value) for selected side(s).

It only returns it's correct value if it was explicitly set.

NOTE: Use the same value(s) and order of attribute(s) from the element design time property "borderType".

**Type**\
[String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)

**Sample**

```js
//sets the border type to "LineBorder"
//sets a 1 px line width for the bottom and left side of the border
//sets the hexadecimal color of the border to "#ccffcc"
myElement.border = 'LineBorder,1,#ccffcc';
```

### enabled

Gets or sets the enabled state of a specified field, also known as "grayed".\
true - enabled; false - not enabled; ! - the enabled state is inverted (the opposite).

NOTE: A disabled element cannot be selected by clicking the element (or by pressing the TAB key even if this option is supported by the operating system).

NOTE: A label or button element will not disable if the "displayType" design time property for a field is set to HTML\_AREA.

NOTE: The disabled "grayed" color is dependent on the LAF set in the Servoy Client Application Preferences. For more information see Preferences: Look And Feel in the Servoy Developer User's Guide.

**Type**\
[Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean)

**Sample**

```js
//gets the enabled state of the field
var currState = myElement.enabled;

//sets the enabled state of the field
myElement.enabled = !currentState;
```

### fgcolor

Gets or sets the foreground color of a field. The color has to be set using the hexadecimal RGB value as used in HTML.\
It only returns it's correct value if it was explicitly set.

**Type**\
[String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)

**Sample**

```js
//sets the foreground color of the field
myElement.fgcolor = "#000000";

//gets the foreground color of the field
var c = myElement.fgcolor;
```

### font

Gets or sets the font name, style, and size of an element.

font name - the name of the font family.\
style - the type of the font. (plain = 0; bold = 1; italic = 2; bold-italic = 3).\
size - the size of the font (in points).

It only returns it's correct value if it was explicitly set.

**Type**\
[String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)

**Sample**

```js
myElement.font = 'Tahoma,1,11';
```

### readOnly

Gets or sets the editable/read-only state of a field; true - read-only; false - editable; ! - the editable/read-only state is inverted (the opposite).

NOTE: A field set as read-only can be selected by clicking (or pressing the TAB key if this option is supported by the operating system) and the field data can be copied.

**Type**\
[Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean)

**Sample**

```js
//gets the editable/read-only state of the field
var currentState = myElement.readOnly;

//sets the editable/read-only state of the field
myElement.readOnly = !currentState;
```

### tabIndex

Gets or sets the selected tab index for the specified tabpanel.\
When setting the value either the tab index or the tab name can be used.\
When getting the value, the tab index (not the name) will be returned all the time.

NOTE: In NGClient tabIndex is updated after form is shown (so onShow of form will have the old index)

**Type**\
[Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object)

**Sample**

```js
//gets the selected tab index of the tabpanel
var current = myElement.tabIndex;

//sets (goes to) the selected tabIndex of the tabpanel
myElement.tabIndex = current + 1;

//or sets (goes to) the tab with the specified name
myElement.tabIndex = 'tab_name';
```

### toolTipText

Gets or sets the tool tip text of an element; text displays when the mouse cursor hovers over an element.

NOTE: HTML should be used for multi-line tooltips; you can also use any valid HTML tags to format tooltip text.

**Type**\
[String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string)

**Sample**

```js
//gets the tooltip text of the element
var toolTip = myElement.toolTipText;

//sets the tooltip text of the element
myElement.toolTipText = "New tip";
myElement.toolTipText = "<html>This includes <b>bolded text</b> and <font color='blue'>BLUE</font> text as well.";
```

### transparent

Gets or sets the transparency of an element; true - transparent; false - not transparent.

NOTE: transparency can be inverted using ! operator: elements.elementName.transparent = !elements.elementName.transparent;

NOTE: transparency will be mostly used for background color, a transparent element will receive the background of the element "beneath" it, a non transparent one will use its own background color

**Type**\
[Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean)

**Sample**

```js
//gets the transparency of the element
var currentState = myElement.transparent;

//sets the transparency of the element
myElement.transparent = !currentState;
```

### visible

Gets or sets the visibility of an element; true - visible; false - not visible; ! - the visibility state is inverted (the opposite).

NOTE: The visibility of an element is not persistent; the state of visibility only applies to the current user in his/her current session.

**Type**\
[Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean)

**Sample**

```js
//sets the element as visible
forms.company.elements.faxBtn.visible = true;

//gets the visibility of the element
var currentState = forms.company.elements.faxBtn.visible;

//sets the element as not visible when the current state is visible
forms.company.elements.faxBtn.visible = !currentState;
```

## Methods Detailed

### addStyleClass(styleName)

Adds a style to the styleClass property. This works only for NGClient where multiple styles are supported.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **styleName** the name of the style class to add

**Returns:** void

**Sample**

```js
myElement.addStyleClass('redbg');
```

### addTab(form/formname, name, tabText, tooltip, iconURL, fg, bg, relatedfoundset/relationname, index)

Adds a relationless or related form as a tab in a specified tabpanel.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **form/formname** the specified form/form name you wish to add as a tab
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **name** the specified name for the tab or NULL (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **tabText** the specified text for the tab (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **tooltip** a specified tooltip for the tab (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **iconURL** a specified icon image or icon URL for the tab (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **fg** the HTML RGB Hexadecimal foreground color for the tab (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **bg** the HTML RGB Hexadecimal background color for the tab (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **relatedfoundset/relationname** the specified name of the related foundset (default is null)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **index** the specified index of a tab, default is -1, will add tab to the end, this index is 0 based

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) a boolean value indicating if tab was successfully added

**Sample**

```js
myElement.addTab(forms.orders,'ordersTab','Orders',null,null,'#000000','#BBCCEE');
```

### getAbsoluteFormLocationY()

Returns the absolute form (designed) Y location.

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) The y location of the form in pixels.

**Sample**

```js
var absolute_y = myElement.getAbsoluteFormLocationY();
```

### getClientProperty(key)

Gets the specified client property for the element based on a key.

NOTE: Depending on the operating system, a user interface property name may be available.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **key** user interface key (depends on operating system)

**Returns:** [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) The value of the property for specified key.

**Sample**

```js
var property = myElement.getClientProperty('ToolTipText');
```

### getDesignProperties()

Get the design-time properties of an element.

**Returns:** [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) A map of all design-time properties for the element.

**Sample**

```js
var prop = forms.orders.elements.mylabel.getDesignProperties()
```

### getDesignTimeProperty(key)

Get a design-time property of an element.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **key** the name of the property

**Returns:** [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) The value of the specified design-time property.

**Sample**

```js
var prop = forms.orders.elements.mylabel.getDesignTimeProperty('myprop')
```

### getElementType()

Returns the type of a specified element.

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The display type of the element as String.

**Sample**

```js
var et = myElement.getElementType();
```

### getFormName()

Returns the name of the form. (may be empty string as well)

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The name of the form.

**Sample**

```js
var name = myElement.getFormName();
```

### getHeight()

Returns the height of the current element.\
NOTE: getHeight() can be used with getWidth() to set the size of an element using the setSize function. For example:

//returns the width (w) and height (h)\
var w = forms.company.elements.faxBtn.getWidth();\
var h = forms.company.elements.faxBtn.getHeight();

//sets the new size\
forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height\
forms.company.elements.faxBtn.setSize(w+1,h+1);

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) The height of the element in pixels.

**Sample**

```js
var ht = myElement.getHeight();
```

### getLocationX()

Returns the x location of the current element.

NOTE: getLocationX() can be used with getLocationY() to set the location of an element using the setLocation function. For Example:

//returns the X and Y coordinates\
var x = forms.company.elements.faxBtn.getLocationX();\
var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location\
forms.company.elements.faxBtn.setLocation(x+10,y+10);

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) The x location of the element in pixels.

**Sample**

```js
var x = myElement.getLocationX();
```

### getLocationY()

Returns the y location of the current element. The method can only be used in Record view.

NOTE: getLocationY() can be used with getLocationX() to set the location of an element using the setLocation function. For Example:

//returns the X and Y coordinates\
var x = forms.company.elements.faxBtn.getLocationX();\
var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location\
forms.company.elements.faxBtn.setLocation(x+10,y+10);

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) The y location of the element in pixels.

**Sample**

```js
var y =  myElement.getLocationY();
```

### getMaxTabIndex()

Returns the maximum tab index for a specified tabpanel.

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) maximum tab index (number)

**Sample**

```js
var max = myElement.getMaxTabIndex();
```

### getMnemonicAt(i)

Returns the mnemonic for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** The number of the specified tab.

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The mnemonic.

**Sample**

```js
var mnemonic = myElement.getMnemonicAt(3);
```

### getName()

Returns the name of an element. (may be null as well)

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The name of the element.

**Sample**

```js
var name = myElement.getName();
```

### getStyleClasses()

Return style classes of the element.

**Returns:** [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array) an array of style class names

**Sample**

```js
myElement.getStyleClasses();
```

### getTabFGColorAt(i)

Returns the foreground color for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** the number of the specified tab

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) color as hexadecimal RGB string

**Sample**

```js
var color = myElement.getTabFGColorAt(3);
```

### getTabFormNameAt(i)

Returns the form name for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** index of the tab

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) the name of the form

**Sample**

```js
var formName = myElement.getSelectedTabFormName(3);
```

### getTabNameAt(i)

Returns the name - the "name" design time property value - for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** The number of the specified tab.

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The tab name

**Sample**

```js
var tabName = myElement.getTabNameAt(3);
```

### getTabRelationNameAt(i)

Returns the relation name for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** index of the tab

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) relation name

**Sample**

```js
var relName = myElement.getTabRelationNameAt(3);
```

### getTabTextAt(i)

Returns the text for a specified tab of a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** The number of the specified tab.

**Returns:** [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) The tab text.

**Sample**

```js
var tabText = myElement.getTabTextAt(3);
```

### getWidth()

Returns the width of the current element.

NOTE: getWidth() can be used with getHeight() to set the size of an element using the setSize function. For Example:

//returns the width (w) and height (h)\
var w = forms.company.elements.faxBtn.getWidth();\
var h = forms.company.elements.faxBtn.getHeight();

//sets the new size\
forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height\
forms.company.elements.faxBtn.setSize(w+1,h+1);

**Returns:** [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) The width of the element in pixels.

**Sample**

```js
var w = myElement.getWidth();
```

### hasStyleClass(styleName)

Check if an element already has a style from the styleClass property.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **styleName** the name of the style class to be checked

**Returns:** void

**Sample**

```js
myElement.hasStyleClass('redbg');
```

### isTabEnabledAt(i)

Returns the enabled status of a specified tab in a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** the number of the specified tab.

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) True if tab is enabled, false otherwise.

**Sample**

```js
var status = myElement.isTabEnabledAt(3);
```

### putClientProperty(key, value)

Sets the value for the specified element client property key.

NOTE: Depending on the operating system, a user interface property name may be available.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **key** user interface key (depends on operating system)
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **value** a predefined value for the key

**Returns:** void

**Sample**

```js
myElement.putClientProperty('ToolTipText','some text');
```

### removeAllTabs()

Removes all tabs for a specified tabpanel.

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) a boolean value indicating if tabs were successfully removed

**Sample**

```js
myElement.removeAllTabs();
```

### removeStyleClass(styleName)

Removes a style from the styleClass property. This works only for NGClient where multiple styles are supported.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **styleName** the name of the style class to remove

**Returns:** void

**Sample**

```js
myElement.removeStyleClass('redbg');
```

### removeTabAt(index)

Removes a specified tab in a tabpanel; can be based on a relation or relationless.

NOTE: In Servoy 4.x (and higher), the addTab function applies to relationless or related tabs in a tabpanel.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **index** The index of the tab to remove.

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) a boolean value indicating if tab was successfully removed

**Sample**

```js
myElement.removeTabAt(3);
```

### setLocation(x, y)

Sets the location of an element. It takes as input the X (horizontal) and Y (vertical) coordinates - starting from the TOP LEFT side of the screen.\
Please note that location should not be altered at runtime when an element is anchored. Use the solutionModel in such a situation.

NOTE: getLocationX() can be used with getLocationY() to return the current location of an element; then use the X and Y coordinates with the setLocation function to set a new location. For Example:

//returns the X and Y coordinates\
var x = forms.company.elements.faxBtn.getLocationX();\
var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location\
forms.company.elements.faxBtn.setLocation(x+10,y+10);

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **x** the X coordinate of the element in pixels.
* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **y** the Y coordinate of the element in pixels.

**Returns:** void

**Sample**

```js
myElement.setLocation(200,200);
```

### setMnemonicAt(index, text)

Sets the mnemonic for a specified tab in a tabpanel.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **index** the number of the specified tab
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **text** the text to be set for the specified tab

**Returns:** void

**Sample**

```js
myElement.setMnemonicAt(3,'a');
```

### setSize(width, height)

Sets the size of an element. It takes as input the width and the height.\
Please note that size should not be altered at runtime when an element is anchored. Use the solutionModel in such a situation.

NOTE: getWidth() can be used with getHeight() to set the size of an element using the setSize function. For Example:

//returns the width (w) and height (h)\
var w = forms.company.elements.faxBtn.getWidth();\
var h = forms.company.elements.faxBtn.getHeight();

//sets the new size\
forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height\
forms.company.elements.faxBtn.setSize(w+1,h+1);

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **width** the width of the element in pixels.
* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **height** the height of the element in pixels.

**Returns:** void

**Sample**

```js
myElement.setSize(20,30);
```

### setTabEnabledAt(i, b)

Sets the status of a specified tab in a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** the number of the specified tab.
* [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) **b** true if enabled; or false if disabled.

**Returns:** void

**Sample**

```js
myElement.setTabEnabledAt(3,true);
```

### setTabFGColorAt(i, s)

Sets the foreground color for a specified tab in a tabpanel.

**Parameters**

* [Number](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/number) **i** the number of the specified tab
* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **s** the hexadecimal RGB color value to be set.

**Returns:** void

**Sample**

```js
myElement.setTabFGColorAt(3,'#000000');
```

### setTabTextAt(index, text)

Sets the text for a specified tab in a tabpanel.

**Parameters**

* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **index** the number of the specified tab
* [Object](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/object) **text** the text to be set for the specified tab

**Returns:** void

**Sample**

```js
myElement.setTabTextAt(3,'newTitle');
```

***
