One-Shot Button

General

images/download/attachments/6045140/oneshot1.PNG

Component Palette Icon:

images/download/attachments/6045140/oneshot2.PNG


Description

The One-Shot button is great for telling a PLC to do something. It simply writes a value, and then waits for it to be reset by the PLC before it is available again. Note that this is only applicable when the PLC is programmed to reset the value after reading it. If your PLC expects the HMI to reset the bit, use the Momentary Button. Also note that this component is considered safer than the momentary button, because it receives positive feedback from the PLC that the signal was received, avoiding the timing dangers associated with a Momentary Button.

To use the One-Shot button, bind an OPC tag bidirectionally to the button's Value property. When clicked, the button will write the value in its Set Value property to the Value property. Typically, Set Value is 1, and Value is 0 in a ready state, although the logic could be reversed or change simply by altering Set Value. The button can disable itself when it is writing, and will display different text. Note that the button considers itself to be writing whenever Value equals Set Value - you must make sure that the PLC resets this value, otherwise the button will remain in a writing state.

Properties

Name

Description

Property Type

Scripting

Category

Antialias

Draw with antialias on? Makes text smoother

boolean

.antialias

Appearance

Background 3D?

Should this button have a 3d type background, or a flat color one?

boolean

.background3D

Appearance

Background Color

The background color of the button.

Color

.buttonBG

Appearance

Border

The border surrounding this component. NOTE that the border is unaffected by rotation.

Border

.border

Common

Border Painted?

Should the border of this button be displayed?

boolean

.borderPainted

Appearance

Confirm Text

The message to ask the user if confirmation is turned on.

String

.confirmText

Behavior

Confirm?

If true, a confirmation box will be shown.

boolean

.confirm

Behavior

Cursor

The mouse cursor to use when hovering over this component.

int

.cursorCode

Common

Data Quality

The data quality code for any tag bindings on this component.

int

.dataQuality

Data

Disable While Writing

If true, the button will be disabled while it is writing.

boolean

.disableWhileWriting

Behavior

Disabled Image Path

The relative path of the image to be displayed when this component is not enabled.

String

.disabledPath

Appearance

Enabled

If disabled, a component cannot be used.

boolean

.componentEnabled

Common

Fill Area?

Controls whether or not this button's internal area is filled

boolean

.contentAreaFilled

Appearance

Focusable

If a button is not focusable, you will not be able to interact with it with the keyboard. This means you can't "tab" over to it.

boolean

.focusable

Behavior

Font

Font of text of this component

Font

.font

Appearance

Foreground Color

The foreground color of the component.

Color

.foreground

Appearance

Horizontal Alignment

The horizontal alignment of the button's contents (text and/or image)

int

.horizontalAlignment

Layout

Horizontal Text Position

The horizontal position of the button's text relative to its image

int

.horizontalTextPosition

Layout

Icon-Text Spacing

The space (in pixels) between the icon (if any) and the text (if any)

int

.iconTextGap

Appearance

Idle Text

The text of the button while its value is not being written

String

.normalText

Behavior

Image Path

The relative path of the image.

String

.path

Appearance

Margin

The space between a button's text and its borders.

Insets

.margin

Layout

Mnemonic

A single letter that will activate the button using 'ALT-<i>mnemonic</i>'.

String

.mnemonicChar

Behavior

Mouseover Text

The text that is displayed in the tooltip which pops up on mouseover of this component.

String

.toolTipText

Common

Name

The name of this component.

String

.name

Common

Opaque

Is this button completely opaque? Most aren't, so this should usually be false.

boolean

.opaque

Common

Rollover

If true, the button may indicate that the mouse is hovering over it.

boolean

.rolloverEnabled

Behavior

Set Value

The value to set the control value to when the button is pushed.

int

.setValue

Data

Styles

Contains the component's styles

Dataset

.styles

Appearance

Value

The current value. Should be bound bi-directionally to a tag

int

.value

Data

Vertical Alignment

The vertical alignment of the button's contents (text and/or image)

int

.verticalAlignment

Layout

Vertical Text Position

The vertical position of the button's text relative to its image

int

.verticalTextPosition

Layout

Visible

If disabled, the component will be hidden.

boolean

.visible

Common

Writing Text

The text of the button while its value is being written

String

.writePendingText

Behavior

Scripting
Scripting Functions

This component does not have scripting functions associated with it.

Extension Functions

This component does not have extension functions associated with it.

Event Handlers

action

actionPerformed

This event is fired when the 'action' of the component occurs. This means when somebody selects the radio button.

.source

The component that fired this event

focus

focusGained

This event occurs when a component that can receive input, such as a text box, receives the input focus. This usually occurs when a user clicks on the component or tabs over to it.

.source

The component that fired this event.

.oppositeComponent

The other component involved in this focus change. That is, the component that lost focus in order for this one to gain it, or vise versa.

focusLost

This event occurs when a component that had the input focus lost it to another component.

.source

The component that fired this event

.oppositeComponent

The other component involved in this focus change. That is, the component that lost focus in order for this one to gain it, or vise versa.

key

keyPressed

An integer that indicates whether the state was changed to "Selected" (on) or "Deselected" (off). Compare this to the event object's constants to determine what the new state is.

.source

The component that fired this event.

.keyCode

The key code for this event. Used with the keyPressed and keyReleased events. See below for the key code constants.

.keyChar

The character that was typed. Used with the keyTyped event.

.keyLocation

Returns the location of the key that originated this key event. Some keys occur more than once on a keyboard, e.g. the left and right shift keys. Additionally, some keys occur on the numeric keypad. This provides a way of distinguishing such keys. See the KEY_LOCATION constants, the keyTyped event always has a location of KEY_LOCATION_UNKNOWN.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

keyReleased

Fires when a key is released and the source component has the input focus. Works for all characters, including non-printable ones, such as SHIFT and F3.

.source

The component that fired this event.

.keyCode

The key code for this event. Used with the keyPressed and keyReleased events. See below for the key code constants.

.keyChar

The character that was typed. Used with the keyTyped event.

.keyLocation

Returns the location of the key that originated this key event. Some keys occur more than once on a keyboard, e.g. the left and right shift keys. Additionally, some keys occur on the numeric keypad. This provides a way of distinguishing such keys. See the KEY_LOCATION constants in the documentation, the keyTyped event always has a location of KEY_LOCATION_UNKNOWN.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

keyTyped

Fires when a key is pressed and then released when source component has the input focus. Only works for characters that can be printed on the screen.

.source

The component that fired this event.

.keyCode

The key code for this event. Used with the keyPressed and keyReleased events. See below for the key code constants.

.keyChar

The character that was typed. Used with the keyTyped event.

.keyLocation

Returns the location of the key that originated this key event. Some keys occur more than once on a keyboard, e.g. the left and right shift keys. Additionally, some keys occur on the numeric keypad. This provides a way of distinguishing such keys. See the KEY_LOCATION constants in the documentation, the keyTyped event always has a location of KEY_LOCATION_UNKNOWN.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouse

mouseClicked

This event signifies a mouse click on the source component. A mouse click the combination of a mouse press and a mouse release, both of which must have occurred over the source component. Note that this event fires after the pressed and released events have fired.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouseEntered

This event fires when the mouse enters the space over the source component.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouseExited

This event fires when the mouse leaves the space over the source component.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mousePressed

This event fires when a mouse button is pressed down on the source component.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouseReleased

This event fires when a mouse button is released, if that mouse button's press happened over this component.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouseMotion

mouseDragged

Fires when the mouse moves over a component after a button has been pushed.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

mouseMoved

Fires when the mouse moves over a component, but no buttons are pushed.

.source

The component that fired this event.

.button

The code for the button that caused this event to fire.

.clickCount

The number of mouse clicks associated with this event.

.x

The x-coordinate (with respect to the source component) of this mouse event.

.y

The y-coordinate (with respect to the source component) of this mouse event.

.popupTrigger

Returns True (1) if this mouse event is a popup trigger. What constitutes a popup trigger is operating system dependent, which is why this abstraction exists.

.altDown

True (1) if the Alt key was held down during this event, false (0) otherwise.

.controlDown

True (1) if the Control key was held down during this event, false (0) otherwise.

.shiftDown

True (1) if the Shift key was held down during this event, false (0) otherwise.

propertyChange

propertyChange

Fires whenever a bindable property of the source component changes. This works for standard and custom (dynamic) properties.

.source

The component that fired this event.

.newValue

The new value that this property changed to.

.oldValue

The value that this property was before it changed.

.propertyName

The name of the property that changed. NOTE: remember to always filter out these events for the property that you are looking for! Components often have many properties that change.

Examples
One Shot Button

images/download/attachments/6045140/OneShot.PNG