JDK-8087673 : [TableView] TableView and TreeTableView menu button overlaps columns when using a constrained resize policy.
  • Type: Bug
  • Component: javafx
  • Sub-Component: controls
  • Affected Version: 8u20
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2014-10-22
  • Updated: 2022-11-29
  • Resolved: 2022-09-05
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
openjfx20 b03Fixed
Related Reports
Blocks :  
Description
A TableView or TreeTableView that uses a TableView.CONSTRAINED_RESIZE_POLICY and a visible table menu button will have the rightmost portion of the rightmost column in the table obscured by the table menu button.  This makes it difficult to put arbitrary nodes into a table column (header).  It also affects the nodes used to indicate sort order; if the rightmost column is sorted, the sort indicator is obscured.  Here is an example:

https://gist.github.com/ryanjaeb/44481b0a6b1a8ee58c4e

To reproduce:

1) Run the above example.
2) Grab the very left edge of the slider and move it as far right as possible.

The slider will go "underneath" the table menu button.
Comments
Changeset: 2baa10ee Author: Jose Pereda <jpereda@openjdk.org> Date: 2022-09-05 15:44:45 +0000 URL: https://git.openjdk.org/jfx/commit/2baa10eed777574e40e5104278e8690941911018
05-09-2022

A pull request was submitted for review. URL: https://git.openjdk.org/jfx/pull/886 Date: 2022-08-29 11:37:46 +0000
29-08-2022

import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Slider; import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.stage.Stage; public class TableMenuButtonOverlapsColumns extends Application { @Override public void start(Stage primaryStage) throws Exception { TableView<String> table = new TableView<>(); table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY); table.setTableMenuButtonVisible(true); TableColumn<String, String> column = new TableColumn<>(); column.setGraphic(new Slider()); table.getColumns().add(column); primaryStage.setScene(new Scene(table)); primaryStage.show(); } public static void main(String[] args) { launch(); } }
22-10-2014