如何做一个swing界面? 情况是这样的一个主界面中有三个按钮a,b,c,: 当按下按钮a时出面界面A;按下按钮b时出现界面B;按下界面c时出现界面C.求代码!另外请问:在类A中能否调用类B的内部类C? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 刚写了两个类,你看看吧。import java.awt.Color;import java.awt.Font;import java.awt.Rectangle;import java.awt.SystemColor;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ButtonGroup;import javax.swing.JDialog;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JRadioButton;public class b extends JDialog implements ActionListener { private JPanel jContentPane = null; public JLabel jLabelDealingID = null; static JLabel jLabelSumShow = null; static JLabel jLabelMerberIDShow = null; static JLabel jLabelMerberNameShow = null; static JLabel jLabelMerberLevelShow = null; static JLabel jLabelMerberDiscountShow = null; static JLabel jLabelMerberPointsShow = null; static JRadioButton jRadioButtonCommon = null; static JRadioButton jRadioButtonMerBer = null; private ButtonGroup bg = new ButtonGroup(); private JLabel jLabelNum = null; static JLabel jLabelNumShow = null; public b() { initialize(); this.setVisible(true); } private void initialize() { this.setTitle("CashRegister"); this.setSize(500, 200); this.setModal(true); this.setLocationRelativeTo(this); this.setContentPane(getJContentPane()); } private JPanel getJContentPane() { if (jContentPane == null) { jLabelNumShow = new JLabel(); jLabelNumShow.setBounds(new Rectangle(40, 0, 53, 25)); jLabelNumShow.setForeground(Color.WHITE); jLabelNumShow.setText(""); jLabelNum = new JLabel(); jLabelNum.setBounds(new Rectangle(0, 0, 40, 25)); jLabelNum.setForeground(Color.WHITE); jLabelNum.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12)); jLabelNum.setText("总计:"); jContentPane = new JPanel(); jContentPane.setLayout(null); jContentPane.add(getJRadioButtonMerBer(), null); jContentPane.add(jLabelNum, null); jContentPane.add(jLabelNumShow, null); jContentPane.setBackground(SystemColor.darkGray);//背景颜色 } return jContentPane; } private JRadioButton getJRadioButtonMerBer() { if (jRadioButtonMerBer == null) { jRadioButtonMerBer = new JRadioButton(); jRadioButtonMerBer.setBounds(new Rectangle(300, 0, 54, 21)); jRadioButtonMerBer.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12)); jRadioButtonMerBer.setText("点我"); jRadioButtonMerBer.setSelected(false);// 交易后返回普通用户 bg.add(jRadioButtonMerBer); jRadioButtonMerBer.addItemListener(new java.awt.event.ItemListener() { public void itemStateChanged(java.awt.event.ItemEvent e) { if(e.getStateChange()==e.SELECTED){ a Select = new a(null,"点我",true); } } }); } return jRadioButtonMerBer; } public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub } public static void main(String args[]) { b test=new b(); test.setVisible(true); } } import java.awt.Font;import java.awt.Frame;import java.awt.Rectangle;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;public class a extends JDialog { private static final long serialVersionUID = 1L; private JPanel jContentPane = null; private JLabel jLabelMerberIDTitle = null; private JTextField jTextFieldMerberID = null; private JButton jButtonSure = null; private JButton jButtonExit = null; public a(Frame owner,String s,boolean b) { super(owner,s,b); initialize(); } private void initialize() { this.setSize(332, 198); this.setContentPane(getJContentPane()); this.setLocationRelativeTo(this); this.setVisible(true); } private JPanel getJContentPane() { if (jContentPane == null) { jLabelMerberIDTitle = new JLabel(); jLabelMerberIDTitle.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12)); jLabelMerberIDTitle.setText("请输入信息"); jLabelMerberIDTitle.setBounds(new Rectangle(49, 37, 114, 33)); jContentPane = new JPanel(); jContentPane.setLayout(null); jContentPane.add(jLabelMerberIDTitle, null); jContentPane.add(getJTextFieldMerberID(), null); jContentPane.add(getJButtonSure(), null); jContentPane.add(getJButtonExit(), null); } return jContentPane; } private JTextField getJTextFieldMerberID() { if (jTextFieldMerberID == null) { jTextFieldMerberID = new JTextField(); jTextFieldMerberID.setBounds(new Rectangle(162, 37, 114, 33)); } return jTextFieldMerberID; } private JButton getJButtonSure() { if (jButtonSure == null) { jButtonSure = new JButton(); jButtonSure.setBounds(new Rectangle(61, 98, 70, 33)); jButtonSure.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12)); jButtonSure.setText("确定"); jButtonSure.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { String id = jTextFieldMerberID.getText(); b.jLabelNumShow.setText(id); setVisible(false); }}); } return jButtonSure; } private JButton getJButtonExit() { if (jButtonExit == null) { jButtonExit = new JButton(); jButtonExit.setBounds(new Rectangle(192, 98, 70, 33)); jButtonExit.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12)); jButtonExit.setText("取消"); jButtonExit.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { setVisible(false); } }); } return jButtonExit; } } 这两个类,你拷贝进去运行一下就明白了。希望对你有帮助 这类东西我还是喜欢用matisse form来做。 可以。可以用下面B.C bc = new B().new C(); 先学基础理论吧,然后用eclipse+swt+wbpro很容易就画出来了 基本的SWING开发,好好看有关SWING的书吧! String编译器优化问题 没有为类型 BigInteger 定义方法 valueOf(int) 如何定制邮件的发送时间在晚上八点以后 关于JAVA的学习 我们现在做项目主要用SERVLET+JSP+JDBC,请问这些技术过时了吗 ? java写的SocketServer如何和c或vb写的client通信?? 谁接触过TMAG? 最简单的图形窗口 静态方法不能通过继承改变方法体吗? 请大家帮忙看一下这个错误 Jmenu 为什么不能触发事件?? 怎么变相的继承String类呢?【详情见贴内】
import java.awt.Font;
import java.awt.Rectangle;
import java.awt.SystemColor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ButtonGroup;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;public class b extends JDialog implements ActionListener {
private JPanel jContentPane = null;
public JLabel jLabelDealingID = null;
static JLabel jLabelSumShow = null;
static JLabel jLabelMerberIDShow = null;
static JLabel jLabelMerberNameShow = null;
static JLabel jLabelMerberLevelShow = null;
static JLabel jLabelMerberDiscountShow = null;
static JLabel jLabelMerberPointsShow = null;
static JRadioButton jRadioButtonCommon = null;
static JRadioButton jRadioButtonMerBer = null;
private ButtonGroup bg = new ButtonGroup();
private JLabel jLabelNum = null;
static JLabel jLabelNumShow = null;
public b() {
initialize();
this.setVisible(true);
}
private void initialize() {
this.setTitle("CashRegister");
this.setSize(500, 200);
this.setModal(true);
this.setLocationRelativeTo(this);
this.setContentPane(getJContentPane());
} private JPanel getJContentPane() {
if (jContentPane == null) {
jLabelNumShow = new JLabel();
jLabelNumShow.setBounds(new Rectangle(40, 0, 53, 25));
jLabelNumShow.setForeground(Color.WHITE);
jLabelNumShow.setText("");
jLabelNum = new JLabel();
jLabelNum.setBounds(new Rectangle(0, 0, 40, 25));
jLabelNum.setForeground(Color.WHITE);
jLabelNum.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12));
jLabelNum.setText("总计:");
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJRadioButtonMerBer(), null);
jContentPane.add(jLabelNum, null);
jContentPane.add(jLabelNumShow, null);
jContentPane.setBackground(SystemColor.darkGray);//背景颜色
}
return jContentPane;
}
private JRadioButton getJRadioButtonMerBer() {
if (jRadioButtonMerBer == null) {
jRadioButtonMerBer = new JRadioButton();
jRadioButtonMerBer.setBounds(new Rectangle(300, 0, 54, 21));
jRadioButtonMerBer.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12));
jRadioButtonMerBer.setText("点我");
jRadioButtonMerBer.setSelected(false);// 交易后返回普通用户
bg.add(jRadioButtonMerBer);
jRadioButtonMerBer.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if(e.getStateChange()==e.SELECTED){
a Select = new a(null,"点我",true);
}
}
});
}
return jRadioButtonMerBer;
} public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
public static void main(String args[]) {
b test=new b();
test.setVisible(true);
}
} import java.awt.Font;
import java.awt.Frame;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;public class a extends JDialog { private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JLabel jLabelMerberIDTitle = null;
private JTextField jTextFieldMerberID = null;
private JButton jButtonSure = null;
private JButton jButtonExit = null;
public a(Frame owner,String s,boolean b) {
super(owner,s,b);
initialize();
} private void initialize() {
this.setSize(332, 198);
this.setContentPane(getJContentPane());
this.setLocationRelativeTo(this);
this.setVisible(true);
} private JPanel getJContentPane() {
if (jContentPane == null) {
jLabelMerberIDTitle = new JLabel();
jLabelMerberIDTitle.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12));
jLabelMerberIDTitle.setText("请输入信息");
jLabelMerberIDTitle.setBounds(new Rectangle(49, 37, 114, 33));
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(jLabelMerberIDTitle, null);
jContentPane.add(getJTextFieldMerberID(), null);
jContentPane.add(getJButtonSure(), null);
jContentPane.add(getJButtonExit(), null);
}
return jContentPane;
} private JTextField getJTextFieldMerberID() {
if (jTextFieldMerberID == null) {
jTextFieldMerberID = new JTextField();
jTextFieldMerberID.setBounds(new Rectangle(162, 37, 114, 33));
}
return jTextFieldMerberID;
}
private JButton getJButtonSure() {
if (jButtonSure == null) {
jButtonSure = new JButton();
jButtonSure.setBounds(new Rectangle(61, 98, 70, 33));
jButtonSure.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12));
jButtonSure.setText("确定");
jButtonSure.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
String id = jTextFieldMerberID.getText();
b.jLabelNumShow.setText(id);
setVisible(false);
}});
}
return jButtonSure;
}
private JButton getJButtonExit() {
if (jButtonExit == null) {
jButtonExit = new JButton();
jButtonExit.setBounds(new Rectangle(192, 98, 70, 33));
jButtonExit.setFont(new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.BOLD, 12));
jButtonExit.setText("取消");
jButtonExit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
setVisible(false);
}
});
}
return jButtonExit;
}
} 这两个类,你拷贝进去运行一下就明白了。
希望对你有帮助
可以用下面
B.C bc = new B().new C();