[英]How to print a part of an item in bold with JList
我使用DefaultListCellRenderer
渲染字符串数组(它实际上不是字符串数组,仅用于解释我的问题)。 getListCellRendererComponent
函数采用一个Array,并且必须以粗体显示该数组的元素。 我目前的想法是使用Html标签(例如<b>theElement</b>
),但是我已经读到这不是一个好习惯。 下面的代码是我目前的想法。
if (value instanceof ArrayList) {
ArrayList<String> al = (ArrayList<String>) value
String s = "<html><b>" + al.get(0) + "</b></html>\n";
al.remove(0);
for(String c : al)
s += c + "\n";
setText(s);
您可以在JList中使用HTML,但我不知道为什么这是一个不好的做法-除非当用户选择一行时,您现在要检查所选项目是否是<b>thing</b>
而不是公正的thing
。 但是,如果您要比对选定列表项进行字符串比较做得更好,那么这应该不是问题。
如果您使用的是DefaultListCellRenderer
,这是我知道可以使项目的某些部分变为粗体的唯一方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.