frame为什么声明为 static 的?

honghuixing 2003-09-14 09:05:17

frame为什么声明为 static 的? 好像 只有 int 等值类型 才可以吧

import javax.swing.*;
public class Applicant
{ static JFrame frame; JPanel panel;

JLabel labelAppID;
JLabel labelAppName;
JLabel labelAppAddress;
JLabel labelAppPosition;

//variables for data entry controls
JTextField textAppID;
JTextField textAppName;
JTextField textAppAddress;
JComboBox comboAppPosition;

public Applicant()
{ //Create a panel
panel = new JPanel();

labelAppID = new JLabel("Applicant ID");
labelAppName = new JLabel("Name");
labelAppAddress = new JLabel("Address");
labelAppPosition = new JLabel("Position");

//Initializing JTextField
textAppID = new JTextField(5);
textAppName = new JTextField(30);
textAppAddress = new JTextField(30);

String []C ={"China","india","English","American"};
JList l=new JList (C);
l.setSelectionMode(2);//0only single,1 continuous-shift key,2 any sequence- ctrl key

String position[] = { "Manager","Executive", "Associate"};
comboAppPosition = new JComboBox(position);

frame.getContentPane().add(panel);
panel.add(labelAppID);
panel.add(textAppID);

//Adding controls for Applicant name
panel.add(labelAppName);
panel.add(textAppName);
//Adding controls for Applicant Address
panel.add(labelAppAddress);
panel.add(textAppAddress);

//Adding controls for Applicant Position
panel.add(labelAppPosition);
panel.add(comboAppPosition);
panel.add(l);
}
public static void main(String args[])
{
frame = new JFrame("Applicant Details");
//making the frame visible
Applicant appObject;
appObject = new Applicant();
frame.setVisible(true);
frame.setSize(300,300);
}
}
...全文
49 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
liushenling 2003-09-14
  • 打赏
  • 举报
回复
panel是一个容器,frame也是一个容器,你首先就一个小容器(姑且这么说)panel放到大容器frame里面,然后又向小容器里面添加了一个labelAppID,这里是没有什么先后顺序的!当然,你也可以,先向小容器中放置组件,然后将整个小容器连同其里面的东西一块添到大容器中!其实,当我们用jb的design进行编程时,都是先在frame上面添加一个其他容器(如panel),然后再向子容器中添加子容器或者组件!
stamp80 2003-09-14
  • 打赏
  • 举报
回复
不用再new了
honghuixing 2003-09-14
  • 打赏
  • 举报
回复
为什么 frame.getContentPane().add(panel); 放到
panel.add(labelAppID); 前面 仍旧可以 添加上此 控件?

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧