Class Button
- All Implemented Interfaces:
Drawable
- Styles:
- ARROW, CHECK, PUSH, RADIO, TOGGLE, FLAT, WRAP
- UP, DOWN, LEFT, RIGHT, CENTER
- Events:
- Selection
Note: Only one of the styles ARROW, CHECK, PUSH, RADIO, and TOGGLE may be specified.
Note: Only one of the styles LEFT, RIGHT, and CENTER may be specified.
Note: Only one of the styles UP, DOWN, LEFT, and RIGHT may be specified when the ARROW style is specified.
IMPORTANT: This class is not intended to be subclassed.
- See Also:
- Restriction:
- This class is not intended to be subclassed by clients.
-
Field Summary
Fields inherited from class org.eclipse.swt.widgets.Widget
nativeZoom
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addSelectionListener
(SelectionListener listener) Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in theSelectionListener
interface.int
Returns a value which describes the position of the text or image in the receiver.boolean
Returnstrue
if the receiver is grayed, and false otherwise.getImage()
Returns the receiver's image if it has one, or null if it does not.boolean
Returnstrue
if the receiver is selected, and false otherwise.getText()
Returns the receiver's text, which will be an empty string if it has never been set or if the receiver is anARROW
button.void
removeSelectionListener
(SelectionListener listener) Removes the listener from the collection of listeners who will be notified when the control is selected by the user.void
setAlignment
(int alignment) Controls how text, images and arrows will be displayed in the receiver.void
setBackground
(Color color) Sets the button's background color to the color specified by the argument, or to the default system color for the control if the argument is null.boolean
setFocus()
Causes the receiver to have the keyboard focus, such that all keyboard events will be delivered to it.void
setGrayed
(boolean grayed) Sets the grayed state of the receiver.void
Sets the receiver's image to the argument, which may benull
indicating that no image should be displayed.void
setSelection
(boolean selected) Sets the selection state of the receiver, if it is of typeCHECK
,RADIO
, orTOGGLE
.void
Sets the receiver's text.Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, addTypedListener, checkSubclass, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, getTypedListeners, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, removeTypedListener, reskin, setData, setData, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.swt.graphics.Drawable
isAutoScalable
-
Constructor Details
-
Button
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.The style value is either one of the style constants defined in class
SWT
which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using theint
"|" operator) two or more of thoseSWT
style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.- Parameters:
parent
- a composite control which will be the parent of the new instance (cannot be null)style
- the style of control to construct- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if the parent is null
SWTException
-- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
- ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
- See Also:
-
-
Method Details
-
addSelectionListener
Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in theSelectionListener
interface.widgetSelected
is called when the control is selected by the user.widgetDefaultSelected
is not called.When the
SWT.RADIO
style bit is set, thewidgetSelected
method is also called when the receiver loses selection because another item in the same radio group was selected by the user. DuringwidgetSelected
the application can usegetSelection()
to determine the current selected state of the receiver.- Parameters:
listener
- the listener which should be notified- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if the listener is null
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
-
getAlignment
public int getAlignment()Returns a value which describes the position of the text or image in the receiver. The value will be one ofLEFT
,RIGHT
orCENTER
unless the receiver is anARROW
button, in which case, the alignment will indicate the direction of the arrow (one ofLEFT
,RIGHT
,UP
orDOWN
).- Returns:
- the alignment
- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
getGrayed
public boolean getGrayed()Returnstrue
if the receiver is grayed, and false otherwise. When the widget does not have theCHECK
style, return false.- Returns:
- the grayed state of the checkbox
- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- Since:
- 3.4
-
getImage
Returns the receiver's image if it has one, or null if it does not.- Returns:
- the receiver's image
- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
getSelection
public boolean getSelection()Returnstrue
if the receiver is selected, and false otherwise.When the receiver is of type
CHECK
orRADIO
, it is selected when it is checked. When it is of typeTOGGLE
, it is selected when it is pushed in. If the receiver is of any other type, this method returns false.- Returns:
- the selection state
- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
getText
Returns the receiver's text, which will be an empty string if it has never been set or if the receiver is anARROW
button.- Returns:
- the receiver's text
- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
removeSelectionListener
Removes the listener from the collection of listeners who will be notified when the control is selected by the user.- Parameters:
listener
- the listener which should no longer be notified- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if the listener is null
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
-
setAlignment
public void setAlignment(int alignment) Controls how text, images and arrows will be displayed in the receiver. The argument should be one ofLEFT
,RIGHT
orCENTER
unless the receiver is anARROW
button, in which case, the argument indicates the direction of the arrow (one ofLEFT
,RIGHT
,UP
orDOWN
).- Parameters:
alignment
- the new alignment- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
setBackground
Sets the button's background color to the color specified by the argument, or to the default system color for the control if the argument is null.Note: This is custom paint operation and only affects
SWT.PUSH
andSWT.TOGGLE
buttons. If the native button has a 3D look an feel (e.g. Windows 7), this method will cause the button to look FLAT irrespective of the state of theSWT.FLAT
style. ForSWT.CHECK
andSWT.RADIO
buttons, this method delegates toControl.setBackground(Color)
.- Overrides:
setBackground
in classControl
- Parameters:
color
- the new color (or null)- Throws:
IllegalArgumentException
-- ERROR_INVALID_ARGUMENT - if the argument has been disposed
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
setFocus
public boolean setFocus()Description copied from class:Control
Causes the receiver to have the keyboard focus, such that all keyboard events will be delivered to it. Focus reassignment will respect applicable platform constraints. -
setImage
Sets the receiver's image to the argument, which may benull
indicating that no image should be displayed.Note that a Button can display an image and text simultaneously.
- Parameters:
image
- the image to display on the receiver (may benull
)- Throws:
IllegalArgumentException
-- ERROR_INVALID_ARGUMENT - if the image has been disposed
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
setGrayed
public void setGrayed(boolean grayed) Sets the grayed state of the receiver. This state change only applies if the control was created with the SWT.CHECK style.- Parameters:
grayed
- the new grayed state- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- Since:
- 3.4
-
setSelection
public void setSelection(boolean selected) Sets the selection state of the receiver, if it is of typeCHECK
,RADIO
, orTOGGLE
.When the receiver is of type
CHECK
orRADIO
, it is selected when it is checked. When it is of typeTOGGLE
, it is selected when it is pushed in.- Parameters:
selected
- the new selection state- Throws:
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
setText
Sets the receiver's text.This method sets the button label. The label may include the mnemonic character but must not contain line delimiters.
Mnemonics are indicated by an '&' that causes the next character to be the mnemonic. When the user presses a key sequence that matches the mnemonic, a selection event occurs. On most platforms, the mnemonic appears underlined but may be emphasized in a platform specific manner. The mnemonic indicator character '&' can be escaped by doubling it in the string, causing a single '&' to be displayed.
Note that a Button can display an image and text simultaneously on Windows (starting with XP), GTK+ and OSX. On other platforms, a Button that has an image and text set into it will display the image or text that was set most recently.
Also note, if control characters like '\n', '\t' etc. are used in the string, then the behavior is platform dependent.
- Parameters:
string
- the new text- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if the text is null
SWTException
-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-