public class Pizza extends JFrame implements ItemListener, ActionListener{ private final int PTTITLES = 7,LTITLES = 7,MTITLES = 7,STITLES = 7; private JPanel mainPanel = new JPanel(), centerPanel = new JPanel(), buttonPanel = new JPanel(), pizzaTypePanel = new JPanel(), largePanel = new JPanel(), mediumPanel = new JPanel(), smallPanel = new JPanel(), ddPanel = new JPanel(); private JButton clear = new JButton("clear"); private JButton submit = new JButton("submit"); private JTextArea display = new JTextArea(10,20); String s; JCheckBox titlesp[] = new JCheckBox[PTTITLES]; JCheckBox titlesl[] = new JCheckBox[LTITLES]; JCheckBox titlesm[] = new JCheckBox[MTITLES]; JCheckBox titless[] = new JCheckBox[STITLES]; JTabbedPane jTabbedPane = new JTabbedPane();
for(int k = 0; k < titleLabelsPT.length; k++) { titlesp[k] = new JCheckBox(titleLabelsPT[k]); titlesp[k].addItemListener(this); pizzaTypePanel.add(titlesp[k]); }} public void largemoney() {
for(int k = 0; k < titleLabelsLM.length; k++) { titlesl[k] = new JCheckBox(titleLabelsLM[k]); titlesl[k].addItemListener(this); largePanel.add(titlesl[k]); }} public void mediummoney() {
for(int k = 0; k < titleLabelsMM.length; k++) { titlesm[k] = new JCheckBox(titleLabelsMM[k]); titlesm[k].addItemListener(this); mediumPanel.add(titlesm[k]); }} public void smallmoney() {
for(int k = 0; k < titleLabelsSM.length; k++) { titless[k] = new JCheckBox(titleLabelsSM[k]); titless[k].addItemListener(this); smallPanel.add(titless[k]); }} public void itemStateChanged(ItemEvent e) { display.setText("Your order so far "); for (int k = 0; k < titlesp.length; k++ ) if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ ) if (titlesl[k].isSelected()) display.append(" Large (" + titlesl[k].getText() + ")"); for (int k = 0; k < titlesm.length; k++ ) if (titlesm[k].isSelected()) display.append(" Medium (" + titlesm[k].getText() + ")"); for (int k = 0; k < titless.length; k++ ) if (titless[k].isSelected()) display.append(" Small (" + titless[k].getText() + ")");
}
public void actionPerformed(ActionEvent e){ String label = submit.getText(); if (e.getSource() == submit) { if (label.equals("Submit Order")) { display.append("Thank you. Press 'Confirm' to submit for your order!\n"); submit.setText("Confirm Order"); } else { display.append("Thank you. You will receive your order tomorrow!\n"); submit.setText("Submit Order"); } } else display.setText("Thank you. Maybe we can serve you next time!\n"); }
public static void main(String[] args) { Pizza f = new Pizza(); f.setSize(600, 750);
public class Pizza extends JFrame implements ItemListener, ActionListener{ private final int PTTITLES = 7,LTITLES = 7,MTITLES = 7,STITLES = 7; private JPanel mainPanel = new JPanel(), centerPanel = new JPanel(), buttonPanel = new JPanel(), pizzaTypePanel = new JPanel(), largePanel = new JPanel(), mediumPanel = new JPanel(), smallPanel = new JPanel(), ddPanel = new JPanel(); private JButton clear = new JButton("clear"); private JButton submit = new JButton("submit"); private JTextArea display = new JTextArea(10,20); String s; JCheckBox titlesp[] = new JCheckBox[PTTITLES]; JCheckBox titlesl[] = new JCheckBox[LTITLES]; JCheckBox titlesm[] = new JCheckBox[MTITLES]; JCheckBox titless[] = new JCheckBox[STITLES]; JTabbedPane jTabbedPane = new JTabbedPane();
for(int k = 0; k < titleLabelsPT.length; k++) { titlesp[k] = new JCheckBox(titleLabelsPT[k]); titlesp[k].addItemListener(this); pizzaTypePanel.add(titlesp[k]); }} public void largemoney() {
for(int k = 0; k < titleLabelsLM.length; k++) { titlesl[k] = new JCheckBox(titleLabelsLM[k]); titlesl[k].addItemListener(this); largePanel.add(titlesl[k]); }} public void mediummoney() {
for(int k = 0; k < titleLabelsMM.length; k++) { titlesm[k] = new JCheckBox(titleLabelsMM[k]); titlesm[k].addItemListener(this); mediumPanel.add(titlesm[k]); }} public void smallmoney() {
for(int k = 0; k < titleLabelsSM.length; k++) { titless[k] = new JCheckBox(titleLabelsSM[k]); titless[k].addItemListener(this); smallPanel.add(titless[k]); }} public void itemStateChanged(ItemEvent e) { display.setText("Your order so far "); for (int k = 0; k < titlesp.length; k++ ) if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ ) if (titlesl[k].isSelected()) display.append(" Large (" + titlesl[k].getText() + ")"); for (int k = 0; k < titlesm.length; k++ ) if (titlesm[k].isSelected()) display.append(" Medium (" + titlesm[k].getText() + ")"); for (int k = 0; k < titless.length; k++ ) if (titless[k].isSelected()) display.append(" Small (" + titless[k].getText() + ")");
}
public void actionPerformed(ActionEvent e){ String label = submit.getText(); if (e.getSource() == submit) { if (label.equals("Submit Order")) { display.append("Thank you. Press 'Confirm' to submit for your order!\n"); submit.setText("Confirm Order"); } else { display.append("Thank you. You will receive your order tomorrow!\n"); submit.setText("Submit Order"); } } else display.setText("Thank you. Maybe we can serve you next time!\n"); }
public static void main(String[] args) { Pizza f = new Pizza(); f.setSize(600, 750);
f.setVisible(true);
} } 自己帖出来自己看看先
答: 将方法public void itemStateChanged(ItemEvent e)的代码改成如下代码,就行了.public void itemStateChanged(ItemEvent e) { display.setText("Your order so far "); for (int k = 0; k < titlesp.length; k++ ) if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ ) if (titlesl[k].isSelected()) display.append(" Large (" + titlesl[k].getText() + ")"); for (int k = 0; k < titlesm.length; k++ ) if (titlesm[k].isSelected()) display.append(" Medium (" + titlesm[k].getText() + ")"); for (int k = 0; k < titless.length; k++ ) if (titless[k].isSelected()) display.append(" Small (" + titless[k].getText() + ")");
}
答:对不起,上贴贴错了. 将方法public void itemStateChanged(ItemEvent e)的代码改成如下代码,就行了. public void itemStateChanged(ItemEvent e) { display.setText("Your order so far \n "); for (int k = 0; k < titlesp.length; k++ ) { if (titlesp[k].isSelected())
display.append( titlesp[k].getText() );
if (titlesl[k].isSelected()) display.append(" Large (" + titlesl[k].getText() + ")");
if (titlesm[k].isSelected()) display.append(" Medium (" + titlesm[k].getText() + ")");
if (titless[k].isSelected()) display.append(" Small (" + titless[k].getText() + ")"); display.append("\n"); } }
同上,for (int k = 0; k < titlesp.length; k++ ) if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ ) if (titlesl[k].isSelected()) display.append(" Large (" + titlesl[k].getText() + ")"); for (int k = 0; k < titlesm.length; k++ ) if (titlesm[k].isSelected()) display.append(" Medium (" + titlesm[k].getText() + ")"); for (int k = 0; k < titless.length; k++ ) if (titless[k].isSelected()) display.append(" Small (" + titless[k].getText() + ")"); 你用了四个for语句
首先,这一个用JAVA写的GUI.我贴出代码,大家运行一下,看看是不是出错(当你点第二份的时候).import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
public class Pizza extends JFrame implements ItemListener, ActionListener{ private final int PTTITLES = 7,LTITLES = 7,MTITLES = 7,STITLES = 7;
private JPanel mainPanel = new JPanel(),
centerPanel = new JPanel(),
buttonPanel = new JPanel(),
pizzaTypePanel = new JPanel(),
largePanel = new JPanel(),
mediumPanel = new JPanel(),
smallPanel = new JPanel(),
ddPanel = new JPanel();
private JButton clear = new JButton("clear");
private JButton submit = new JButton("submit");
private JTextArea display = new JTextArea(10,20);
String s;
JCheckBox titlesp[] = new JCheckBox[PTTITLES];
JCheckBox titlesl[] = new JCheckBox[LTITLES];
JCheckBox titlesm[] = new JCheckBox[MTITLES];
JCheckBox titless[] = new JCheckBox[STITLES];
JTabbedPane jTabbedPane = new JTabbedPane();
public Pizza() {
pizzaTypePanel.setLayout(new GridLayout(7, 1));
largePanel.setLayout(new GridLayout(7, 1));
mediumPanel.setLayout(new GridLayout(7, 1));
smallPanel.setLayout(new GridLayout(7, 1));
pizzaTypePanel.setBorder(BorderFactory.createTitledBorder("Pizza Type"));
largePanel.setBorder(BorderFactory.createTitledBorder("Large"));
mediumPanel.setBorder(BorderFactory.createTitledBorder("Medium"));
smallPanel.setBorder(BorderFactory.createTitledBorder("Small"));
centerPanel.add(pizzaTypePanel);
centerPanel.add(largePanel);
centerPanel.add(mediumPanel);
centerPanel.add(smallPanel);
centerPanel.setLayout(new FlowLayout());
pack();
getContentPane().add(mainPanel);
pizzaType();
largemoney();
mediummoney();
smallmoney();
buttonPanel.add(clear);
buttonPanel.add(submit);
mainPanel.add(jTabbedPane);
mainPanel.add(display);
clear.addActionListener(this);
submit.addActionListener(this);
mainPanel.add(buttonPanel);
mainPanel.setLayout(new GridLayout(3, 1));
jTabbedPane.addTab("Pizza Type", null, centerPanel, null);
jTabbedPane.addTab("声明", null, ddPanel, null);
}
public void pizzaType() {
String titleLabelsPT[] =
{"Super Special", "Marinara",
"Vegetarian","Hawaiian","Meat Lovers","Chicken","Extra Topping"};
for(int k = 0; k < titleLabelsPT.length; k++) {
titlesp[k] = new JCheckBox(titleLabelsPT[k]);
titlesp[k].addItemListener(this);
pizzaTypePanel.add(titlesp[k]);
}} public void largemoney() {
String titleLabelsLM[] =
{"8.00", "8.00",
"8.00","8.00","8.00","8.00","8.00"};
for(int k = 0; k < titleLabelsLM.length; k++) {
titlesl[k] = new JCheckBox(titleLabelsLM[k]);
titlesl[k].addItemListener(this);
largePanel.add(titlesl[k]);
}} public void mediummoney() {
String titleLabelsMM[] =
{"6.50", "6.50",
"6.50","6.50","6.50","6.50","6.50"};
for(int k = 0; k < titleLabelsMM.length; k++) {
titlesm[k] = new JCheckBox(titleLabelsMM[k]);
titlesm[k].addItemListener(this);
mediumPanel.add(titlesm[k]);
}} public void smallmoney() {
String titleLabelsSM[] =
{"5.00", "5.00",
"5.00","5.00","5.00","5.00","5.00"};
for(int k = 0; k < titleLabelsSM.length; k++) {
titless[k] = new JCheckBox(titleLabelsSM[k]);
titless[k].addItemListener(this);
smallPanel.add(titless[k]);
}}
public void itemStateChanged(ItemEvent e) {
display.setText("Your order so far ");
for (int k = 0; k < titlesp.length; k++ )
if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ )
if (titlesl[k].isSelected())
display.append(" Large (" + titlesl[k].getText() + ")");
for (int k = 0; k < titlesm.length; k++ )
if (titlesm[k].isSelected())
display.append(" Medium (" + titlesm[k].getText() + ")");
for (int k = 0; k < titless.length; k++ )
if (titless[k].isSelected())
display.append(" Small (" + titless[k].getText() + ")");
}
public void actionPerformed(ActionEvent e){
String label = submit.getText();
if (e.getSource() == submit) {
if (label.equals("Submit Order")) {
display.append("Thank you. Press 'Confirm' to submit for your order!\n");
submit.setText("Confirm Order");
} else {
display.append("Thank you. You will receive your order tomorrow!\n");
submit.setText("Submit Order");
}
} else
display.setText("Thank you. Maybe we can serve you next time!\n");
}
public static void main(String[] args) {
Pizza f = new Pizza();
f.setSize(600, 750);
f.setVisible(true);
} }
顺便告诉你帖代码可以用JAVA格式的
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
public class Pizza extends JFrame implements ItemListener, ActionListener{ private final int PTTITLES = 7,LTITLES = 7,MTITLES = 7,STITLES = 7;
private JPanel mainPanel = new JPanel(),
centerPanel = new JPanel(),
buttonPanel = new JPanel(),
pizzaTypePanel = new JPanel(),
largePanel = new JPanel(),
mediumPanel = new JPanel(),
smallPanel = new JPanel(),
ddPanel = new JPanel();
private JButton clear = new JButton("clear");
private JButton submit = new JButton("submit");
private JTextArea display = new JTextArea(10,20);
String s;
JCheckBox titlesp[] = new JCheckBox[PTTITLES];
JCheckBox titlesl[] = new JCheckBox[LTITLES];
JCheckBox titlesm[] = new JCheckBox[MTITLES];
JCheckBox titless[] = new JCheckBox[STITLES];
JTabbedPane jTabbedPane = new JTabbedPane();
public Pizza() {
pizzaTypePanel.setLayout(new GridLayout(7, 1));
largePanel.setLayout(new GridLayout(7, 1));
mediumPanel.setLayout(new GridLayout(7, 1));
smallPanel.setLayout(new GridLayout(7, 1));
pizzaTypePanel.setBorder(BorderFactory.createTitledBorder("Pizza Type"));
largePanel.setBorder(BorderFactory.createTitledBorder("Large"));
mediumPanel.setBorder(BorderFactory.createTitledBorder("Medium"));
smallPanel.setBorder(BorderFactory.createTitledBorder("Small"));
centerPanel.add(pizzaTypePanel);
centerPanel.add(largePanel);
centerPanel.add(mediumPanel);
centerPanel.add(smallPanel);
centerPanel.setLayout(new FlowLayout());
pack();
getContentPane().add(mainPanel);
pizzaType();
largemoney();
mediummoney();
smallmoney();
buttonPanel.add(clear);
buttonPanel.add(submit);
mainPanel.add(jTabbedPane);
mainPanel.add(display);
clear.addActionListener(this);
submit.addActionListener(this);
mainPanel.add(buttonPanel);
mainPanel.setLayout(new GridLayout(3, 1));
jTabbedPane.addTab("Pizza Type", null, centerPanel, null);
jTabbedPane.addTab("声明", null, ddPanel, null);
}
public void pizzaType() {
String titleLabelsPT[] =
{"Super Special", "Marinara",
"Vegetarian","Hawaiian","Meat Lovers","Chicken","Extra Topping"};
for(int k = 0; k < titleLabelsPT.length; k++) {
titlesp[k] = new JCheckBox(titleLabelsPT[k]);
titlesp[k].addItemListener(this);
pizzaTypePanel.add(titlesp[k]);
}} public void largemoney() {
String titleLabelsLM[] =
{"8.00", "8.00",
"8.00","8.00","8.00","8.00","8.00"};
for(int k = 0; k < titleLabelsLM.length; k++) {
titlesl[k] = new JCheckBox(titleLabelsLM[k]);
titlesl[k].addItemListener(this);
largePanel.add(titlesl[k]);
}} public void mediummoney() {
String titleLabelsMM[] =
{"6.50", "6.50",
"6.50","6.50","6.50","6.50","6.50"};
for(int k = 0; k < titleLabelsMM.length; k++) {
titlesm[k] = new JCheckBox(titleLabelsMM[k]);
titlesm[k].addItemListener(this);
mediumPanel.add(titlesm[k]);
}} public void smallmoney() {
String titleLabelsSM[] =
{"5.00", "5.00",
"5.00","5.00","5.00","5.00","5.00"};
for(int k = 0; k < titleLabelsSM.length; k++) {
titless[k] = new JCheckBox(titleLabelsSM[k]);
titless[k].addItemListener(this);
smallPanel.add(titless[k]);
}}
public void itemStateChanged(ItemEvent e) {
display.setText("Your order so far ");
for (int k = 0; k < titlesp.length; k++ )
if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ )
if (titlesl[k].isSelected())
display.append(" Large (" + titlesl[k].getText() + ")");
for (int k = 0; k < titlesm.length; k++ )
if (titlesm[k].isSelected())
display.append(" Medium (" + titlesm[k].getText() + ")");
for (int k = 0; k < titless.length; k++ )
if (titless[k].isSelected())
display.append(" Small (" + titless[k].getText() + ")");
}
public void actionPerformed(ActionEvent e){
String label = submit.getText();
if (e.getSource() == submit) {
if (label.equals("Submit Order")) {
display.append("Thank you. Press 'Confirm' to submit for your order!\n");
submit.setText("Confirm Order");
} else {
display.append("Thank you. You will receive your order tomorrow!\n");
submit.setText("Submit Order");
}
} else
display.setText("Thank you. Maybe we can serve you next time!\n");
}
public static void main(String[] args) {
Pizza f = new Pizza();
f.setSize(600, 750);
f.setVisible(true);
} }
自己帖出来自己看看先
将方法public void itemStateChanged(ItemEvent e)的代码改成如下代码,就行了.public void itemStateChanged(ItemEvent e) {
display.setText("Your order so far ");
for (int k = 0; k < titlesp.length; k++ )
if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ )
if (titlesl[k].isSelected())
display.append(" Large (" + titlesl[k].getText() + ")");
for (int k = 0; k < titlesm.length; k++ )
if (titlesm[k].isSelected())
display.append(" Medium (" + titlesm[k].getText() + ")");
for (int k = 0; k < titless.length; k++ )
if (titless[k].isSelected())
display.append(" Small (" + titless[k].getText() + ")");
}
将方法public void itemStateChanged(ItemEvent e)的代码改成如下代码,就行了. public void itemStateChanged(ItemEvent e) {
display.setText("Your order so far \n ");
for (int k = 0; k < titlesp.length; k++ )
{
if (titlesp[k].isSelected())
display.append( titlesp[k].getText() );
if (titlesl[k].isSelected())
display.append(" Large (" + titlesl[k].getText() + ")");
if (titlesm[k].isSelected())
display.append(" Medium (" + titlesm[k].getText() + ")");
if (titless[k].isSelected())
display.append(" Small (" + titless[k].getText() + ")");
display.append("\n");
}
}
if (titlesp[k].isSelected())
display.append( titlesp[k].getText() + "\n");
for (int k = 0; k < titlesl.length; k++ )
if (titlesl[k].isSelected())
display.append(" Large (" + titlesl[k].getText() + ")");
for (int k = 0; k < titlesm.length; k++ )
if (titlesm[k].isSelected())
display.append(" Medium (" + titlesm[k].getText() + ")");
for (int k = 0; k < titless.length; k++ )
if (titless[k].isSelected())
display.append(" Small (" + titless[k].getText() + ")");
你用了四个for语句