微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当标题列标签包含换行符时,如何在“选择列”标题菜单对话框列选择器中显示完整的标题标签名称?

如何解决当标题列标签包含换行符时,如何在“选择列”标题菜单对话框列选择器中显示完整的标题标签名称?

我在 nat 表中添加标题菜单配置,如下所示,其中还包括“选择列”菜单

    <label for="select">Choose:</label>

    <select id="select">
        <option value="">--Please choose an option--</option>    
        <option value="0000">0000</option>  
        <option value="0100">0100</option>
        <option value="0010">0010</option>
        <option value="0001">0001</option>
        <option value="02fe">02fe</option>
        <option value="02ff">02ff</option>
        <option value="03fe">03fe</option>
    </select>

//如果标题名称由多个单词组成,那么我使用 ("\n") 作为单词之间的分隔符 //标题列名,这样可以节省一些空间

// 在这种情况下,打开“选择列”上下文菜单对话框时,只有列的第一个单词可见

是否可以通过用单个空格(“”)字符替换所有“\n”和空格字符来修复 在 org.eclipse.nebula.widgets.nattable.columnChooser.gui.ColumnChooserDialog //用单个空格替换列标签中多余的空格或换行符的代码,以便//标题名称在填充树方法中完全可见 // Popup menu this.natTable.addConfiguration(new HeaderMenuConfiguration(this.natTable) { @Override protected PopupMenuBuilder createColumnHeaderMenu(NatTable natTable) { return super.createColumnHeaderMenu(natTable) .withColumnChooserMenuItem(); } }); // Column chooser displayColumnChooserCommandHandler columnChooserCommandHandler = new displayColumnChooserCommandHandler( bodyLayer.getSelectionLayer(),bodyLayer.getColumnHideShowLayer(),columnHeaderLayer.getColumnHeaderLayer(),columnHeaderLayer.getColumnHeaderDataLayer(),columnHeaderLayer.getColumnGroupHeaderLayer(),columnGroupModel); ; 在这种情况下,可以提供修复以用列标题名称中的单个空格替换额外的空格,还是有其他替代方法来修复它? Image with header names having multiple words For eg:"Issue Date",if header name is dispalyed as "Issue\nDate",only Issue is visible in "Select Columns" context menu dialog

解决方法

IIRC 您添加换行符以节省一些空间。出于任何语义原因不需要它们。如果没有足够的可用空间,我建议配置呈现列标题单元格内容的 TextPainter 自动换行。例如,这可能如下所示:

configRegistry.registerConfigAttribute(
    CellConfigAttributes.CELL_PAINTER,new BeveledBorderDecorator(new TextPainter(true,false,true)),DisplayMode.NORMAL,GridRegion.COLUMN_HEADER);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。