你可以帮我解决这些代码,我试图在标签中显示当前日期,但我正在使用3个不同的类,即主类(AppStart),我在广告中创建标签的类将在框架中显示标签,从而显示(Swing1),然后显示自己的日期类(DateLabel)。代码如下所示:
public DateLabel()
{
Date today = new Date();
//Date format
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, Locale.US);
String strDate = df.format(today);
setText( strDate);
}
}
import java.awt.*;//used for Gui Developement
import java.util.*;
import java.text.*;
import javax.swing.*;//Used for GUI development
public class Swing1 extends JFrame
{
JLabel lblWelcome;
DateLabel myDate;
Swing1()
{
JFrame myJF = new JFrame();
myJF.setTitle("CBT Tutorial");
//JLabel Stuff
myDate = new DateLabel();
Container c = getContentPane();
c.add(myDate, BorderLayout.NORTH);
myJF.setSize(300,300);
myJF.show();
}
}
public class AppStart {
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
new Swing1();
}
}
答案 0 :(得分:2)
对于使用netbeans可视化构建器的任何人,我发现了一种更快的方法。
public classname{
Initcomponents();
String date= new Date.toString();
Yourlabelname.setText(date)}
}
希望它有助于陷入困境!: - )
答案 1 :(得分:1)
DateLabel
必须延长JLabel
,否则setText
将无效,只需将自定义标签添加到Container
。
答案 2 :(得分:1)
无需在Swing1构造函数中创建新的JFrame。 Swing1扩展了JFrame,只在Swing1实例上做getContentPane().add(myDate, BorderLayout.NORTH);
。确保将super()
作为构造函数中的第一个语句,可能使用合适的参数集(例如,如果您需要双缓冲等)。