JAVA程序不显示窗体

我在网上看到别人的程序packagening;importjava.awt.event.*;importjavax.swing.*;importjava.awt.*;pu... 我在网上看到别人的程序package ning;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class PlusAction {
public static void main(String[] args) {
new PlusActionFrame();
}
}

class PlusActionFrame extends JFrame {
private static final long serialVersionUID = 1L;
public PlusActionFrame() {
this.setSize(400, 200);
JLabel label1 = new JLabel("用户名:");
JLabel label2 = new JLabel("密码:");
JPanel panel = new JPanel();
final JTextField text1 = new JTextField(30);
//text1.setSize(20, 20);
final JTextField text2 = new JTextField(10);
final JTextField text3 = new JTextField(20);
//text1.setSize(20, 20);
panel.add(label1);
panel.add(text1);
panel.add(label2);
panel.add(text2);
panel.add(text3);
JButton button = new JButton("登陆");
JButton button2 = new JButton("重置");

panel.add(button);
panel.add(button2);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(panel);
this.setVisible(true);
}
}我自己也写了一个差不多的程序import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
import java.awt.*;
public class moon{
public static void main(String[] args){
sun gui=new sun();

}}
class sun extends JFrame {
private static final long serialVersionUID = 1L;
Button select=new Button("查询");
Button insert=new Button("添加");
Button delete=new Button("删除");
Button modify=new Button("修改");
TextField tid=new TextField(200);

TextField tname=new TextField(12);
TextField tsex=new TextField(12);
TextField tcost=new TextField(12);
TextField twork=new TextField(12);

TextArea tshow=new TextArea(5,10);
void sun()
{
this.setSize(400, 200);
JPanel panel1=new JPanel();
JPanel panel2=new JPanel();
JLabel id=new JLabel("id:",JLabel.RIGHT);
JLabel name=new JLabel("name:",JLabel.RIGHT);
JLabel sex=new JLabel("sex:",JLabel.RIGHT);
JLabel cost=new JLabel("cost:",JLabel.RIGHT);
JLabel work=new JLabel("work:",JLabel.RIGHT);

panel1.add(id);panel1.add(tid);
panel1.add(name);panel1.add(tname);
panel1.add(sex);panel1.add(tsex);
panel1.add(cost);panel1.add(tcost);
panel1.add(work); panel1.add(twork);

panel1.add(select);panel1.add(insert);
panel1.add(delete);panel1.add(modify);
panel2.add(tshow);
this.add(panel1);this.add(panel2); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}它就不显示窗体,点击运行,什么反应都没有!求助啊!
展开
 我来答
哈儿四
2012-05-11 · 超过26用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:74.1万
展开全部
嗯,问题很明显,主要是子类sun的构造方法
void sun()
{
*****
}
看到没,sun方法使用void修饰,这意味着返回类型为空,即按常理而言它需要返回一个窗体(JFrame),而使用void之后,程序将不再显示窗体,因此,改成:
public sun()
{
*****
}
你再看看别人的,如你所见:
class PlusActionFrame extends JFrame {
public PlusActionFrame() {
*****
}
*****
}
此处构造方法就用public修饰就可以了,不能用空(void)修饰

//////////////////////-----------补充一些废话----------/////////////////////////

其实初次接触java时候,我也犯过这类错误,但是还是很显而易见的,最好的方法就是一一对比,就Over了,java这东西,接触多了就好,多练,good luck~~
公子俗
2012-05-11 · 超过15用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:38.2万
展开全部
gui.sun();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友55e22a4
2012-05-11 · TA获得超过145个赞
知道小有建树答主
回答量:228
采纳率:0%
帮助的人:160万
展开全部
你的添加全部是在sun()方法里面的,你在main方法里面没有调用。在main方法里面用添加gui.sun()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式