我的java表单中有一个文本区域。我该如何使用不同的字体类型和大小
public double roundTwoDecimals(double d) {
DecimalFormat twoDForm = new DecimalFormat("#.##");
return Double.valueOf(twoDForm.format(d));
}
int ches = 0;
ref = Integer.parseInt(jTextField6.getText());
nam = jTextField7.getText();
add = jTextArea3.getText();
ph = jTextField8.getText();
bill(jTextArea4);
total();
double tt = 0;
if (flag == 1) {
uclist(nam);
ches = jComboBox2.getSelectedIndex();
} else if (flag == 0) {
iclist(nam, add, ph);
ches = not();
}
for (int i = 0; i < no(); i++) {
if (qty[i] != 0) {
t[i] = amt[i] / 1.135;
tv[i] = amt[i] - t[i];
isalest((i + 1), ches, qty[i], price[i]);
uSale(nItem[i], qty[i]);
ustock((i + 1), qty[i]);
jTextArea4.append("\n" + nItem[i] + " " + qty[i] + " "
+ price[i] + " " + r(t[i]));
}
tt += tv[i];
}
jTextArea4.append("\n\tTotal(including vat @13.5%" + r(tt));// TODO add your handling code here:
答案 0 :(得分:4)
最好也许使用另一个可以处理更复杂格式的文本组件,例如JTextPane而不是JTextArea,因为后者更多只用于显示简单文本。
但话说回来,如果你想以表格形式显示数据,可以考虑使用具有等宽字体的JTextArea,例如Font.MONOSPACED,并使用String.format(...)来格式化文本,甚至更好,使用JTable代替JTextArea。
另外,请考虑重命名所有变量,以使其名称具有逻辑意义。我们很难用名为r()的方法或名为t []的数组来制作头或尾。这包括您的GUI变量。您似乎正在使用NetBeans生成GUI(这是其他时间的另一个建议的主题),并且此IDE将轻松地让您重命名GUI变量,这也是我强烈建议的。从现在起几周后,当您查看此代码时,如果将jTextField7重命名为clientLastNameField或某些内容,则会更有意义。