6.[代码]monologFX显示内容太多的处理方案
2012-12-18 更新 monologFX显示超过1000字节长度内容的处理方法
monologFx里消息显示是使用的label标签, 并设置了wrapText. 如果内容很多, 会自动换行, 并撑高弹出框. 如果要显示的消息'异常多', 会可能超过屏幕高度并无法显示剩下的内容. (比如我做excel导入, 失败信息和结果要弹出来, 可能有100行以上)
现在我修改了源码, 判断内容长度, 如果长度大于1000, 就使用TextArea显示内容, 多余的内容通过下拉条查看.
源码的zip就不更新了, 如果有这样需求的人自己改下源码吧. 如下:
MonologFX.java
//private Label message = new Label();
private Node message; // 变量定义改成 Node
// 修改setMessage方法
public void setMessage(String msg) {
/*
msg+"\r\n\r\n" 是因为内容大概是300长度的时候, Label里的内容结尾总会丢失一点
如果换两行就是把最后一行变成"..."(ellipsis默认"...")
所以这里换两行, 然后设置ellipsis为"", 免得出现"..."
很奇怪的问题. - -
*/
if(msg.length() <1000) {
Label label &#61; new Label();
label.setText(msg&#43;"\r\n\r\n");
label.setWrapText(true);
label.setEllipsisString("");
message &#61; label;
}
else {
TextArea textArea &#61; new TextArea();
textArea.setText(msg);
textArea.setWrapText(true);
message &#61; textArea;
}
}
// 不上效果图了. 遇到这样情况可以改. 不然忽略就是了