Class Textbox
- java.lang.Object
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Component
,Disable
,Readonly
,Scope
,ComponentCtrl
,Constrainted
public class Textbox extends InputElement
A textbox.See Specification.
Default
getZclass()
: z-textbox.(since 3.5.0)When multiline is true, only default mold is available.
- Author:
- tomyeh
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlBasedComponent
HtmlBasedComponent.ExtraCtrl
-
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children, AbstractComponent.ForwardInfo, AbstractComponent.TargetInfo
-
-
Field Summary
-
Fields inherited from class org.zkoss.zul.impl.InputElement
_cols, _value
-
Fields inherited from class org.zkoss.zk.ui.HtmlBasedComponent
_zclass
-
Fields inherited from interface org.zkoss.zk.ui.Component
APPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPE
-
Fields inherited from interface org.zkoss.zk.ui.sys.ComponentCtrl
AFTER_CHILD_ADDED, AFTER_CHILD_REMOVED, AFTER_PAGE_ATTACHED, AFTER_PAGE_DETACHED, AFTER_PARENT_CHANGED, CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkBeforeSetRows()
Internal check if there is any use of vflex and height before setRowsjava.lang.Object
clone()
Clones the component.protected java.lang.Object
coerceFromString(java.lang.String value)
Coerces the value passed tosetValue(java.lang.String)
.protected java.lang.String
coerceToString(java.lang.Object value)
Coerces the value passed tosetValue(java.lang.String)
.PropertyAccess
getPropertyAccess(java.lang.String prop)
Returns the corresponding property access object from the given property name, if any.int
getRows()
Returns the rows.java.lang.String
getType()
Returns the type.java.lang.String
getValue()
Returns the value.java.lang.String
getZclass()
Returns the ZK Cascading Style class for this component.boolean
isMultiline()
Returns whether it is multiline.boolean
isSubmitByEnter()
Returns whether it is submitByEnter, If submitByEnter is true, press enter will fire onOK event instead of move to next line, you should press shift + enter if you want to move to next line.boolean
isTabbable()
Returns whether TAB is allowed.protected void
renderProperties(ContentRenderer renderer)
Renders the content of this component, excluding the enclosing tags and children.void
setHeight(java.lang.String height)
Sets the height.void
setMultiline(boolean multiline)
Sets whether it is multiline.void
setRows(int rows)
Sets the rows.void
setSubmitByEnter(boolean submitByEnter)
Sets whether it is submitByEnter.void
setTabbable(boolean tabbable)
Sets whether TAB is allowed.void
setType(java.lang.String type)
Sets the type.void
setValue(java.lang.String value)
Sets the value.void
setVflex(java.lang.String flex)
Sets vertical flexibility hint of this component.-
Methods inherited from class org.zkoss.zul.impl.InputElement
checkUserError, clearErrorMessage, clearErrorMessage, getCols, getConstraint, getConstraintString, getErrorboxIconSclass, getErrorboxSclass, getErrorMessage, getInputAttributes, getInstant, getMaxlength, getName, getPlaceholder, getRawText, getRawValue, getTargetValue, getText, isChildable, isDisabled, isInplace, isInstant, isReadonly, isValid, marshall, onWrongValue, select, service, setCols, setConstraint, setConstraint, setDisabled, setErrorboxIconSclass, setErrorboxSclass, setErrorMessage, setInplace, setInputAttributes, setInputAttributes, setInsertedText, setInstant, setMaxlength, setName, setPlaceholder, setRawValue, setReadonly, setSelectedText, setSelectionRange, setText, setValueDirectly, showCustomError, unmarshall, validate
-
Methods inherited from class org.zkoss.zul.impl.XulElement
getContext, getCtrlKeys, getPopup, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributes
-
Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, removeSclass, removeSclass, setAction, setClass, setClientAction, setDraggable, setDroppable, setFocus, setHeight0, setHeightDirectly, setHflex, setHflex0, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTabindex, setTabindex, setTooltiptext, setTop, setTopDirectly, setVflex0, setVflexDirectly, setWidth, setWidth0, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly
-
Methods inherited from class org.zkoss.zk.ui.AbstractComponent
addAnnotation, addCallback, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, destroyIndexCacheMap, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, disableHostChanged, enableBindingAnnotation, enableHostChanged, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getCallback, getChildren, getClientAttribute, getClientDataAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getForwards, getId, getIndexCacheMap, getLastChild, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowFellowIfAny, getShadowRoots, getShadowVariable, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, initIndexCacheMap, insertBefore, invalidate, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onParentChanged, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeCallback, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, renderPropertiesOnly, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize
-
-
-
-
Constructor Detail
-
Textbox
public Textbox()
-
Textbox
public Textbox(java.lang.String value) throws WrongValueException
- Throws:
WrongValueException
-
-
Method Detail
-
getValue
public java.lang.String getValue() throws WrongValueException
Returns the value. The same asInputElement.getText()
.Default: "".
- Throws:
WrongValueException
- if user entered a wrong value
-
setValue
public void setValue(java.lang.String value) throws WrongValueException
Sets the value.- Parameters:
value
- the value; If null, it is considered as empty.- Throws:
WrongValueException
- if value is wrong
-
coerceFromString
protected java.lang.Object coerceFromString(java.lang.String value) throws WrongValueException
Coerces the value passed tosetValue(java.lang.String)
.Default: convert null to an empty string.
- Specified by:
coerceFromString
in classInputElement
- Throws:
WrongValueException
-
coerceToString
protected java.lang.String coerceToString(java.lang.Object value)
Coerces the value passed tosetValue(java.lang.String)
.Default: convert null to an empty string.
- Specified by:
coerceToString
in classInputElement
-
getType
public java.lang.String getType()
Returns the type.Default: text.
- Overrides:
getType
in classInputElement
-
setType
public void setType(java.lang.String type) throws WrongValueException
Sets the type.- Parameters:
type
- the type. Acceptable values are "text" and "password". Unlike XUL, "timed" is redundant because it is enabled as long as onChanging is added. Since 6.5.0 type also support tel, email and url.- Throws:
WrongValueException
-
getRows
public int getRows()
Returns the rows.Default: 1.
-
setRows
public void setRows(int rows) throws WrongValueException
Sets the rows.Note: Not allowed to set rows and height/vflex at the same time
- Throws:
WrongValueException
-
checkBeforeSetRows
protected void checkBeforeSetRows() throws UiException
Internal check if there is any use of vflex and height before setRows- Throws:
UiException
-
isMultiline
public boolean isMultiline()
Returns whether it is multiline.Default: false.
- Overrides:
isMultiline
in classInputElement
-
setMultiline
public void setMultiline(boolean multiline)
Sets whether it is multiline.
-
isTabbable
public boolean isTabbable()
Returns whether TAB is allowed. If true, the user can enter TAB in the textbox, rather than change focus.Default: false.
- Since:
- 3.6.0
-
setTabbable
public void setTabbable(boolean tabbable)
Sets whether TAB is allowed. If true, the user can enter TAB in the textbox, rather than change focus.Default: false.
- Since:
- 3.6.0
-
isSubmitByEnter
public boolean isSubmitByEnter()
Returns whether it is submitByEnter, If submitByEnter is true, press enter will fire onOK event instead of move to next line, you should press shift + enter if you want to move to next line.Default: false.
- Returns:
- true if it is submitByEnter.
- Since:
- 8.5.2
-
setSubmitByEnter
public void setSubmitByEnter(boolean submitByEnter)
Sets whether it is submitByEnter. If submitByEnter is true, press enter will fire onOK event instead of move to next line, you should press shift + enter if you want to move to next line.- Parameters:
submitByEnter
- whether it is submitByEnter- Since:
- 8.5.2
-
setVflex
public void setVflex(java.lang.String flex)
Description copied from class:HtmlBasedComponent
Sets vertical flexibility hint of this component.Number flex indicates how this component's container distributes remaining empty space among its children vertically. Flexible component grow and shrink to fit their given space. Flexible components with larger flex values will be made larger than components with lower flex values, at the ratio determined by all flexible components. The actual flex value is not relevant unless there are other flexible components within the same container. Once the default sizes of components in a container are calculated, the remaining space in the container is divided among the flexible components, according to their flex ratios.
Specify a flex value of negative value, 0, or "false" has the same effect as leaving the flex attribute out entirely. Specify a flex value of "true" has the same effect as a flex value of 1.
Special flex hint, "min", indicates that the minimum space shall be given to this flexible component to enclose all of its children components. That is, the flexible component grow and shrink to fit its children components.
- Overrides:
setVflex
in classHtmlBasedComponent
- Parameters:
flex
- the vertical flex hint.- See Also:
HtmlBasedComponent.setHflex(java.lang.String)
,HtmlBasedComponent.getVflex()
-
setHeight
public void setHeight(java.lang.String height)
Description copied from class:HtmlBasedComponent
Sets the height. If null, the best fit is used.- Overrides:
setHeight
in classHtmlBasedComponent
-
clone
public java.lang.Object clone()
Description copied from interface:Component
Clones the component. All of its children and descendants are cloned. Also, ID are preserved.- Specified by:
clone
in interfaceComponent
- Overrides:
clone
in classInputElement
- Returns:
- the new component. Notice that it doesn't belong to any page, nor desktop. It doesn't have a parent, either.
-
getPropertyAccess
public PropertyAccess getPropertyAccess(java.lang.String prop)
Description copied from interface:ComponentCtrl
Returns the corresponding property access object from the given property name, if any.- Specified by:
getPropertyAccess
in interfaceComponentCtrl
- Overrides:
getPropertyAccess
in classInputElement
- Parameters:
prop
- the name of the property- Returns:
- null it means not to support for the property name.
-
renderProperties
protected void renderProperties(ContentRenderer renderer) throws java.io.IOException
Description copied from class:HtmlBasedComponent
Renders the content of this component, excluding the enclosing tags and children.- Overrides:
renderProperties
in classInputElement
- Throws:
java.io.IOException
-
getZclass
public java.lang.String getZclass()
Description copied from class:HtmlBasedComponent
Returns the ZK Cascading Style class for this component. It usually depends on the implementation of the mold (AbstractComponent.getMold()
).Default: null (the default value depends on element).
HtmlBasedComponent.setZclass(java.lang.String)
) will completely replace the default style of a component. In other words, the default style of a component is associated with the default value ofHtmlBasedComponent.getZclass()
. Once it is changed, the default style won't be applied at all. If you want to perform small adjustments, useHtmlBasedComponent.setSclass(java.lang.String)
instead.- Overrides:
getZclass
in classHtmlBasedComponent
- See Also:
HtmlBasedComponent.getSclass()
-
-