Module  javafx.controls
软件包  javafx.scene.control

Class TableColumnBase<S,T>

    • 构造方法详细信息

      • TableColumnBase

        protected TableColumnBase​()
        使用默认单元格工厂,比较器和onEditCommit实现创建默认的TableColumn。
      • TableColumnBase

        protected TableColumnBase​(String text)
        创建一个TableColumn,文本设置为提供的字符串,默认单元格工厂,比较器和onEditCommit实现。
        参数
        text - 当TableColumn放置在TableView中时显示的字符串。
    • 方法详细信息

      • setText

        public final void setText​(String value)
        设置属性文本的值。
        Property description:
        这是此列的标题中显示的文本。
      • getText

        public final String getText​()
        获取属性文本的值。
        Property description:
        这是此列的标题中显示的文本。
      • setVisible

        public final void setVisible​(boolean value)
        设置属性的值可见。
        Property description:
        切换此项将立即切换此列和所有子列的可见性。
      • isVisible

        public final boolean isVisible​()
        获取属性的值可见。
        Property description:
        切换此项将立即切换此列和所有子列的可见性。
      • getParentColumn

        public final TableColumnBase<S,?> getParentColumn​()
        获取属性parentColumn的值。
        Property description:
        在使用嵌套列的情况下,此只读属性将始终引用此列的父级。

        在当前存在的子类中,创建嵌套列只是将相关的TableColumnBase实例放在ObservableList列中的一个问题(例如,参见TableColumn.getColumns()TreeTableColumn.getColumns()

      • setContextMenu

        public final void setContextMenu​(ContextMenu value)
        设置属性contextMenu的值。
        Property description:
        当用户右键单击此TableColumnBase的标题区域时,将显示此菜单。
      • getContextMenu

        public final ContextMenu getContextMenu​()
        获取属性contextMenu的值。
        Property description:
        当用户右键单击此TableColumnBase的标题区域时,将显示此菜单。
      • setId

        public final void setId​(String value)
        设置属性id的值。
        Property description:
        此TableColumnBase的ID。 这个简单的字符串标识符可用于在使用TableColumnBase实例的UI控件中查找特定的TableColumnBase。 默认值为null
        Default value:
        空值
      • getId

        public final String getId​()
        获取属性ID的值。
        Specified by:
        getId在接口 Styleable
        Property description:
        此TableColumnBase的ID。 这个简单的字符串标识符可用于在使用TableColumnBase实例的UI控件中查找特定的TableColumnBase。 默认值为null
        Default value:
        空值
        结果
        StyleableStyleable
      • idProperty

        public final StringProperty idProperty​()
        此TableColumnBase的ID。 这个简单的字符串标识符可用于在使用TableColumnBase实例的UI控件中查找特定的TableColumnBase。 默认值为null
        Default value:
        空值
        另请参见:
        getId()setId(String)
      • setStyle

        public final void setStyle​(String value)
        设置属性样式的值。
        Property description:
        与此TableColumnBase实例相关联的CSS样式的字符串表示形式。 这类似于HTML元素的“样式”属性。 请注意,像HTML样式属性一样,此变量包含样式属性和值,而不包含样式规则的选择器部分。

        在某些有限的平台上可能不支持解析此样式。 建议使用独立的CSS文件。

        Default value:
        空字符串
      • getStyle

        public final String getStyle​()
        获取属性样式的值。
        Specified by:
        getStyle在接口 Styleable
        Property description:
        与此TableColumnBase实例相关联的CSS样式的字符串表示形式。 这类似于HTML元素的“样式”属性。 请注意,像HTML样式属性一样,此变量包含样式属性和值,而不包含样式规则的选择器部分。

        在某些有限的平台上可能不支持解析此样式。 建议使用独立的CSS文件。

        Default value:
        空字符串
        结果
        与此特定的 Node相关联的CSS样式的字符串表示 Node
      • styleProperty

        public final StringProperty styleProperty​()
        与此TableColumnBase实例相关联的CSS样式的字符串表示形式。 这类似于HTML元素的“样式”属性。 请注意,像HTML样式属性一样,此变量包含样式属性和值,而不包含样式规则的选择器部分。

        在某些有限的平台上可能不支持解析此样式。 建议使用独立的CSS文件。

        Default value:
        空字符串
        另请参见:
        getStyle()setStyle(String)
      • getStyleClass

        public ObservableList<String> getStyleClass​()
        可用于逻辑组合节点的字符串标识符列表,专门用于外部样式引擎。 该变量类似于HTML元素上的“类”属性,因此列表的每个元素都是此节点所属的样式类。
        Specified by:
        getStyleClass在接口 Styleable
        结果
        可用于逻辑组合节点的字符串标识符列表,专门用于外部样式引擎
        另请参见:
        CSS3 class selectors
      • setGraphic

        public final void setGraphic​(Node value)
        设置属性图形的值。
        Property description:

        在表列中显示的图形,以允许用户以图形方式指示列中的内容。

      • getGraphic

        public final Node getGraphic​()
        获取属性图形的值。
        Property description:

        在表列中显示的图形,以允许用户以图形方式指示列中的内容。

      • setSortNode

        public final void setSortNode​(Node value)
        设置属性sortNode的值。
        Property description:

        用作“排序箭头”的节点,在表列是排序顺序的一部分的情况下向用户显示。 它可能是排序顺序中唯一的项目,或者它可能是次要,三级或后一种排序项目,并且节点应该可视化地反映出来。 这仅在表列处于排序顺序的情况下使用(参见,例如, TableView.getSortOrder()TreeTableView.getSortOrder() )。 如果未指定,则表列皮肤实现负责提供默认排序节点。

        排序节点通常被视为在屏幕上旋转以指示表列是否是排序顺序的一部分的三角形,如果是,排序是升序还是降序,以及排序顺序中的位置。

      • getSortNode

        public final Node getSortNode​()
        获取属性sortNode的值。
        Property description:

        用作“排序箭头”的节点,在表列是排序顺序的一部分的情况下向用户显示。 它可能是排序顺序中唯一的项目,或者它可能是次要,三级或后一种排序项目,并且节点应该可视化地反映出来。 这仅在表列处于排序顺序的情况下使用(参见,例如, TableView.getSortOrder()TreeTableView.getSortOrder() )。 如果未指定,则表列皮肤实现负责提供默认排序节点。

        排序节点通常被视为在屏幕上旋转以指示表列是否是排序顺序的一部分的三角形,如果是,排序是升序还是降序,以及排序顺序中的位置。

      • sortNodeProperty

        public final ObjectProperty<Node> sortNodeProperty​()

        用作“排序箭头”的节点,在表列是排序顺序的一部分的情况下向用户显示。 它可能是排序顺序中唯一的项目,或者它可能是次要,三级或后一种排序项目,并且节点应该可视化地反映出来。 这仅在表列处于排序顺序的情况下使用(参见,例如, TableView.getSortOrder()TreeTableView.getSortOrder() )。 如果未指定,则表列皮肤实现负责提供默认排序节点。

        排序节点通常被视为在屏幕上旋转以指示表列是否是排序顺序的一部分的三角形,如果是,排序是升序还是降序,以及排序顺序中的位置。

        另请参见:
        getSortNode()setSortNode(Node)
      • widthProperty

        public final ReadOnlyDoubleProperty widthProperty​()
        此列的宽度。 修改此操作将导致列宽可视化调整。 建议不要将此属性绑定到外部属性,因为这将导致用户通过拖动列标题的左右边框不能调整列宽。
        另请参见:
        getWidth()
      • getWidth

        public final double getWidth​()
        获取属性宽度的值。
        Property description:
        此列的宽度。 修改此操作将导致列宽可视化调整。 建议不要将此属性绑定到外部属性,因为这将导致用户通过拖动列标题的左右边框不能调整列宽。
      • setMinWidth

        public final void setMinWidth​(double value)
        设置属性minWidth的值。
        Property description:
        允许表列调整大小的最小宽度。
      • getMinWidth

        public final double getMinWidth​()
        获取属性minWidth的值。
        Property description:
        允许表列调整大小的最小宽度。
      • setPrefWidth

        public final void setPrefWidth​(double value)
        设置属性prefWidth的值。
        Property description:
        TableColumn的首选宽度。
      • getPrefWidth

        public final double getPrefWidth​()
        获取属性prefWidth的值。
        Property description:
        TableColumn的首选宽度。
      • setMaxWidth

        public final void setMaxWidth​(double value)
        设置属性maxWidth的值。
        Property description:
        表列允许调整大小的最大宽度。
      • getMaxWidth

        public final double getMaxWidth​()
        获取属性maxWidth的值。
        Property description:
        表列允许调整大小的最大宽度。
      • setResizable

        public final void setResizable​(boolean value)
        设置属性可调整大小的值。
        Property description:
        用于指示此列的宽度是否可以更改。 然而,由大小调整政策来执行。
      • isResizable

        public final boolean isResizable​()
        获取属性可调整大小的值。
        Property description:
        用于指示此列的宽度是否可以更改。 然而,由大小调整政策来执行。
      • sortableProperty

        public final BooleanProperty sortableProperty​()

        用于打开和关闭此列的“可排序性”的布尔属性。 当此属性为true时,此列可以包含在排序操作中。 如果此属性为false,则不会将其包含在排序操作中,即使它包含在底层UI控件的排序顺序列表中(例如TableView.getSortOrder()TreeTableView.getSortOrder() )。

        例如,如果TableColumn实例包含在TableView sortOrder ObservableList中,并且其可排序属性将切换状态,则它将强制TableView执行排序,因为该视图可能需要更新。

        另请参见:
        isSortable()setSortable(boolean)
      • setSortable

        public final void setSortable​(boolean value)
        设置属性可分类的值。
        Property description:

        用于打开和关闭此列的“可排序性”的布尔属性。 当此属性为true时,此列可以包含在排序操作中。 如果此属性为false,即使它包含在底层UI控件的排序顺序列表(例如TableView.getSortOrder()TreeTableView.getSortOrder() )中,也不会包含在排序操作中。

        例如,如果TableColumn实例包含在TableView sortOrder ObservableList中,并且其可排序属性将切换状态,则它将强制TableView执行排序,因为该视图可能需要更新。

      • isSortable

        public final boolean isSortable​()
        获取属性可排序的值。
        Property description:

        用于打开和关闭此列的“可排序性”的布尔属性。 当此属性为true时,此列可以包含在排序操作中。 如果此属性为false,即使它包含在底层UI控件的排序顺序列表中(例如TableView.getSortOrder()TreeTableView.getSortOrder() )也不会包含在排序操作中。

        例如,如果TableColumn实例包含在TableView sortOrder ObservableList中,并且其可排序属性将切换状态,则它将强制TableView执行排序,因为该视图可能需要更新。

      • reorderableProperty

        public final BooleanProperty reorderableProperty​()
        一个布尔属性可以打开和关闭此列的“可重新排序”(通过修改适当的columns列表可以拖放 - 重新排序)。 当此属性为true时,用户可以通过将列拖放到所需的位置来重新排序此列。 当此属性为false时,这种拖放列的功能不可用。
        从以下版本开始:
        9
        另请参见:
        isReorderable()setReorderable(boolean)
      • setReorderable

        public final void setReorderable​(boolean value)
        设置属性可重新排序的值。
        Property description:
        一个布尔属性可以打开和关闭此列的“可重新排序”(通过修改适当的columns列表进行拖放 - 重新排序)始终是允许的)。 当此属性为true时,用户可以通过将列拖放到所需的位置来重新排序此列。 当此属性为false时,这种拖放列的功能不可用。
        从以下版本开始:
        9
      • isReorderable

        public final boolean isReorderable​()
        获取属性可重新排序的值。
        Property description:
        用于打开和关闭此列的“可重新排序”的布尔属性(通过修改适当的columns列表进行拖放 - 重新排序)始终是允许的)。 当此属性为true时,用户可以通过将列拖放到所需的位置来重新排序此列。 当此属性为false时,这种拖放列的功能不可用。
        从以下版本开始:
        9
      • setComparator

        public final void setComparator​(Comparator<T> value)
        设置属性比较器的值。
        Property description:
        排序此表列时使用的比较器功能。 作为参数给出的两个对象是此列中两个单独单元格的单元格数据。
      • getComparator

        public final Comparator<T> getComparator​()
        获取属性比较器的值。
        Property description:
        排序此表列时使用的比较器功能。 作为参数给出的两个对象是此列中两个单独单元格的单元格数据。
      • getProperties

        public final ObservableMap<Object,Object> getProperties​()
        返回此表列上属性的可观察图,主要由应用程序开发人员使用。
        结果
        这个表列的属性的可观察图,主要由应用程序开发人员使用
      • hasProperties

        public boolean hasProperties​()
        测试此表列是否具有属性。
        结果
        如果节点有属性,则为true。
      • setUserData

        public void setUserData​(Object value)
        用于设置可以在以后检索的单个Object属性的便利方法。 这在功能上等同于调用getProperties()。put(Object key,Object value)方法。 这可以稍后通过调用getUserData()来检索。
        参数
        value - 要存储的值 - 以后可以通过调用 getUserData()来检索。
      • getUserData

        public Object getUserData​()
        返回先前设置的Object属性,如果没有使用 setUserData(java.lang.Object)方法设置此属性,则返回null。
        结果
        先前设置的对象,如果没有设置属性或设置为null,则为null。
      • getColumns

        public abstract ObservableList<? extends TableColumnBase<S,?>> getColumns​()
        这样可以支持嵌套列,这对于将相关数据组合在一起是有用的。 例如,我们可能有一个“名称”列,其中包含“First”和“Last”名称的两个嵌套列。

        这对于这样没有影响 - 所有列索引仅指向叶子列,并且不可能使用父列进行排序,只能使用叶列。 换句话说,这纯粹是一个视觉特征。

        结果
        一个包含TableColumnBase实例(或子类)的ObservableList,它是此TableColumnBase的子项。 如果这些孩子的TableColumnBase实例设置为可见,它们将显示在此表列下方。
      • getCellData

        public final T getCellData​(int index)
        返回给定行索引(并且属于此表列)的单元格的实际值。
        参数
        index - 需要数据的行索引。
        结果
        属于该给定行索引和该表的这个方法所调用的表列的交点处的单元格的数据。
      • getCellData

        public final T getCellData​(S item)
        从给定项返回单元格的实际值。
        参数
        item - 应从中提取类型T值的项目。
        结果
        基于作为参数传入的项目,该列中特定单元格中应使用的数据。
      • getCellObservableValue

        public abstract ObservableValue<T> getCellObservableValue​(int index)
        尝试返回给定索引(类型为S)中的项目的ObservableValue <T>。 换句话说,该方法期望接收大于或等于零且小于底层数据模型大小的整数值。 如果索引有效,此方法将返回此特定列的ObservableValue <T>。

        这可以通过调用cell value factory来实现,当通过一个CellDataFeatures (参见例如CellDataFeatures类属于TableColumnTreeTableColumn以获取更多信息时返回)。

        参数
        index - 寻求ObservableValue <T>的项目(S型)的索引。
        结果
        此特定表列的ObservableValue <T>。
      • getCellObservableValue

        public abstract ObservableValue<T> getCellObservableValue​(S item)
        尝试返回给定项目(其类型为S)的ObservableValue <T>。 换句话说,该方法期望从表中的整个“行”的底层数据模型接收一个对象,并且必须返回该特定列中的值的ObservableValue <T>。

        这可以通过调用cell value factory来实现,当通过一个CellDataFeatures (参见例如CellDataFeatures类属于TableColumnTreeTableColumn以获取更多信息)时返回。

        参数
        item - 寻找一个ObservableValue <T>的项目(S型)。
        结果
        此特定表列的ObservableValue <T>。
      • buildEventDispatchChain

        public EventDispatchChain buildEventDispatchChain​(EventDispatchChain tail)
        为此目标构建事件调度链。 事件调度链包含可能对处理针对EventTarget的事件感兴趣的事件调度EventTarget 此事件目标不会自动添加到链中,因此如果要处理事件,则需要为链接添加一个自己的EventDispatcher

        在事件目标是某些层次结构的一部分的情况下,它的链通常是从从层次结构的根被收集到事件目标的事件分派器构建的。

        事件调度链是通过修改提供的初始事件调度链来构建的。 返回的链应该在其末端具有初始链,所以调度员应该放在初始链上。

        调用者不应该假定初始链条保持不变,也不会返回值引用不同的链。

        Specified by:
        buildEventDispatchChain在接口 EventTarget
        参数
        tail - 建立起来的初始链
        结果
        此目标的结果事件调度链
      • addEventHandler

        public <E extends Event> void addEventHandler​(EventType<E> eventType,
                                                      EventHandler<E> eventHandler)
        在此表列中注册一个事件处理程序。 TableColumnBase类允许注册监听器,编辑时将会通知它们。 但是请注意,TableColumnBase 不是一个节点,因此没有触发视觉事件。
        参数类型
        E - 事件的类型
        参数
        eventType - 处理程序接收事件的类型
        eventHandler - 要注册的处理程序
        异常
        NullPointerException - 如果事件类型或处理程序为空
      • removeEventHandler

        public <E extends Event> void removeEventHandler​(EventType<E> eventType,
                                                         EventHandler<E> eventHandler)
        从此表列中注销先前注册的事件处理程序。 一个处理程序可能已被注册用于不同的事件类型,因此调用者需要指定特定的事件类型,从中注销处理程序。
        参数类型
        E - 事件的类型
        参数
        eventType - 要注销的事件类型
        eventHandler - 要注销的处理程序
        异常
        NullPointerException - 如果事件类型或处理程序为空