本文整理汇总了Java中com.intellij.ui.table.TableView.getFontMetrics方法的典型用法代码示例。如果您正苦于以下问题:Java TableView.getFontMetrics方法的具体用法?Java TableView.getFontMetrics怎么用?Java TableView.getFontMetrics使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.ui.table.TableView
的用法示例。
在下文中一共展示了TableView.getFontMetrics方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getMaxValue
import com.intellij.ui.table.TableView; //导入方法依赖的package包/类
private String getMaxValue(String name) {
if (myDualView == null) return null;
TableView table = myDualView.getFlatView();
if (table.getRowCount() == 0) return null;
final Enumeration<TableColumn> columns = table.getColumnModel().getColumns();
int idx = 0;
while (columns.hasMoreElements()) {
TableColumn column = columns.nextElement();
if (name.equals(column.getHeaderValue())) {
break;
}
++ idx;
}
if (idx >= table.getColumnModel().getColumnCount() - 1) return null;
final FontMetrics fm = table.getFontMetrics(table.getFont().deriveFont(Font.BOLD));
final Object header = table.getColumnModel().getColumn(idx).getHeaderValue();
double maxValue = fm.stringWidth((String)header);
String value = (String)header;
for (int i = 0; i < table.getRowCount(); i++) {
final Object at = table.getValueAt(i, idx);
if (at instanceof String) {
final int newWidth = fm.stringWidth((String)at);
if (newWidth > maxValue) {
maxValue = newWidth;
value = (String) at;
}
}
}
return value + "ww";
}
示例2: getMaxValue
import com.intellij.ui.table.TableView; //导入方法依赖的package包/类
@Nullable
private String getMaxValue(@Nonnull String columnHeader) {
TableView table = getDualView().getFlatView();
if (table.getRowCount() == 0) return null;
final Enumeration<TableColumn> columns = table.getColumnModel().getColumns();
int idx = 0;
while (columns.hasMoreElements()) {
TableColumn column = columns.nextElement();
if (columnHeader.equals(column.getHeaderValue())) {
break;
}
++idx;
}
if (idx >= table.getColumnModel().getColumnCount() - 1) return null;
final FontMetrics fm = table.getFontMetrics(table.getFont().deriveFont(Font.BOLD));
final Object header = table.getColumnModel().getColumn(idx).getHeaderValue();
double maxValue = fm.stringWidth((String)header);
String value = (String)header;
for (int i = 0; i < table.getRowCount(); i++) {
final Object at = table.getValueAt(i, idx);
if (at instanceof String) {
final int newWidth = fm.stringWidth((String)at);
if (newWidth > maxValue) {
maxValue = newWidth;
value = (String)at;
}
}
}
return value + "ww";
}