日期:2014-05-20  浏览次数:20690 次

请高手点拨一个“Swing的开发需求”的实现技术。
高手,您好:
    我是一名学习软件工程的学生,我想开发一个:
    让我的系统中的用户,能够向“系统投诉”系统的使用后用户体验,并且能够进行“投诉为自己服务的系统员工的工作满意度”的面板,添加到我的一个CS结构的作品中去.
    我的代码如下:
    (第一套)
    package c_port_packageDoctor;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.text.View;

public class CustomerComplainUI extends JFrame{

/**
 * 
 */
private static final long serialVersionUID = 1L;
JPanel jp = new JPanel();
Font fnt1 = new Font("黑体",0,18);
Font fnt2 = new Font("黑体",0,18);
Font fnt3 = new Font("黑体",0,18);
JTextArea jta = new JTextArea();
JLabel jL0 = new JLabel("请将您的投诉信,发至这个信箱:“buptcjco@cjco.com”,并且遵守下文中的3个条件。");
JLabel jL1 = new JLabel("");

public static void main(String[] args){
new CustomerComplainUI();
}

public CustomerComplainUI() {
// TODO Auto-generated constructor stub
jp.setLayout(new BorderLayout());
int maxWidth = 100; //限制的宽度
JLabel lbl = new JLabel("<html>请将您的投诉信,发至这个信箱:“buptcjco@cjco.com”,并且遵守下文中的3个条件。/n1.请您在邮件中写上系统员工的工号,和,2.您在结单时所得到的单号,并且,3.邮件的长度,需要达到800个字以上的程度,经过系统的验证,如果您提供的信息属实,系统将把本员工的系统积分,减除一分。如果本系统员工的工作对您造成了损失,本系统,将会把该员工的本单报酬,扣除。如果本系统的员工经查对您的经济,物质造成了损害并且责任在本系统的员工这一方的话。本系统,会包赔您的损失。</html>");
javax.swing.text.View v = javax.swing.plaf.basic.BasicHTML.createHTMLView(lbl, lbl.getText());
v.setSize(maxWidth, Integer.MAX_VALUE);
int h = (int) v.getMinimumSpan(View.Y_AXIS); //这是取得的高度
lbl.setPreferredSize(new Dimension(maxWidth, h));
jp.add(lbl,BorderLayout.NORTH);
this.add(jp);
this.setBounds(400,300,400,300);
this.setVisible(true);

}

}
    点击“运行”后,得到的运行后效果如下:
    

    我的“第二次尝试”的代码如下:
    package c_port_packageDoctor;

import java.awt.FontMetrics;

import javax.swing.JLabel;

public class CustomerCompliainUI {
    String longString = "a very very very very very very very very long string";
    StringBuilder builder = new StringBuilder("<html>");