【问题标题】:SWT: ColumnWeightData and ColumnPixelData: role of the `resizable` attribute?SWT:ColumnWeightData 和 ColumnPixelData:`resizable` 属性的作用?
【发布时间】:2017-05-05 16:11:33
【问题描述】:

我有许多使用TableViewerTableColumnLayout 布局的对话框。
TableViewers 中的列以 TableColumnLayout 布局显示。
我希望第一列不可调整大小
我已经尝试了 ColumnWeightDataColumnPixelDataresizable=false 的所有可能组合,但它似乎不起作用。
问:

  • 类中的resizable 属性是什么 ColumnWeightDataColumnPixelData
  • 如何将第一列设置为不可调整大小?

【问题讨论】:

    标签: swt eclipse-rcp jface


    【解决方案1】:

    查看源代码,此标志似乎不会自动执行任何操作,您必须手动使用它的值。为此,您可以调用 TableColumn setResizable 方法。

    如果您使用的是TableViewerColumn,它将类似于:

    TableViewerColumn col = new TableViewerColumn(viewer, SWT.LEAD);
    
    ColumnLayoutData colData = new ColumnWeightData(50, false);
    
    layout.setColumnData(col.getColumn(), colData);
    
    // Set resizeable from column layout data
    col.getColumn().setResizable(colData.resizable);
    

    【讨论】:

    • 谢谢。直接在TableViewerColumn 上将resizable 设置为false 会使列确实无法调整大小。关于ColumnWeightDataColumnPixelData 类的resizable 属性的作用的问题仍然存在。一个错误?一些死代码?我正在考虑在 eclipse 中打开一个错误
    • Eclipse 中的大量代码与我在上面显示的一样。这很奇怪,但似乎是它的用途。
    • 我会查看代码并检查是否可以“修复”
    猜你喜欢
    • 2014-05-25
    • 1970-01-01
    • 1970-01-01
    • 2014-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多