// this version works with VJ++ 1.1 (Java 1.0) import java.awt.*; public class MenuListPV10 extends Frame { public static void main(String[] argv) { Frame f = new MenuListPV10(); f.resize(400, 200); f.show(); } // main private void add(Component c, GridBagLayout gbl, GridBagConstraints gbc, int x, int y, int w, int h) { gbc.gridx = x; gbc.gridy = y; gbc.gridwidth = w; gbc.gridheight = h; gbl.setConstraints(c, gbc); add(c); } // add public MenuListPV10() { setTitle("Menu List"); GridBagLayout gbl = new GridBagLayout(); setLayout(gbl); selector = new CheckboxGroup(); depositSaving = new Checkbox("Savings Deposit",selector,false); depositChecking = new Checkbox("Checking Deposit",selector,false); GridBagConstraints gbc = new GridBagConstraints(); gbc.fill = GridBagConstraints.NONE; gbc.anchor = GridBagConstraints.CENTER; gbc.weightx = 100; gbc.weighty = 100; add(depositSaving, gbl, gbc, 1, 0, 2, 1); add(depositChecking, gbl, gbc, 1, 1, 2, 1); value = new TextField(8); checkingText = new Label(checkingStr + initString, Label.RIGHT); savingText = new Label(savingStr + initString, Label.RIGHT); gbc.anchor = GridBagConstraints.SOUTH; gbc.weighty = 0; add(value, gbl, gbc, 0, 3, 3, 1); Panel p = new Panel(); p.setLayout(new FlowLayout()); p.add(checkingText); p.add(savingText); add(p,gbl,gbc,0,4,12,1); // add(checkingText, gbl, gbc, 0, 4, 12, 1); // add(savingText, gbl, gbc, 0, 5, 12, 1); savingValue = checkingValue = 0; } // MenuListPV10 public boolean handleEvent(Event evt) { if (evt.id == Event.WINDOW_DESTROY) System.exit(0); return super.handleEvent(evt); } // handleEvent public boolean action(Event evt, Object arg) { String s; if (evt.target.equals(depositSaving)) { s = value.getText(); if (s != null) { savingValue += Double.valueOf(s).doubleValue(); savingText.setText(savingStr + savingValue); } } // deposit into savings else if (evt.target.equals(depositChecking)) { s = value.getText(); if (s != null) { checkingValue += Double.valueOf(s).doubleValue(); checkingText.setText(checkingStr + checkingValue); } } savingText.show(); checkingText.show(); return super.action(evt,arg); } // action // instance variables private Checkbox depositSaving, depositChecking; private CheckboxGroup selector; private TextField value; private Label checkingText, savingText; private double savingValue, checkingValue; private static String initString = "0.0"; private static String savingStr = "saving balance : "; private static String checkingStr = "checking balance : "; } // end of class MenuList