Swing tandard od Java 2 nadmnoina awt aj




![JFrame public static void main(String args[]) { JButton. Demo applet = new JButton. Demo(); JFrame public static void main(String args[]) { JButton. Demo applet = new JButton. Demo();](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-5.jpg)

![Grupáky public class Button. Groups extends JPanel { static String[] ids = { "zelen", Grupáky public class Button. Groups extends JPanel { static String[] ids = { "zelen",](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-7.jpg)

















![Input. Dialog Object[] possibilities = {"ham", "spam", "yam"}; String s = (String)JOption. Pane. show. Input. Dialog Object[] possibilities = {"ham", "spam", "yam"}; String s = (String)JOption. Pane. show.](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-25.jpg)
![JMenu. Bar public Object[] menu. Bar = { file. Menu, edit. Menu, face. Menu, JMenu. Bar public Object[] menu. Bar = { file. Menu, edit. Menu, face. Menu,](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-26.jpg)
![public Object[][] help. Menu = { // Menu name: { "Help", new Character('H') }, public Object[][] help. Menu = { // Menu name: { "Help", new Character('H') },](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-27.jpg)
![static public JMenu. Item create. Menu. Item(Object[] data) { JMenu. Item m = null; static public JMenu. Item create. Menu. Item(Object[] data) { JMenu. Item m = null;](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-28.jpg)


![Trees class Branch { Default. Mutable. Tree. Node r; public Branch(String[] data) { r Trees class Branch { Default. Mutable. Tree. Node r; public Branch(String[] data) { r](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-31.jpg)
![public class Tabbed extends JPanel { static Object[][] q = { { "Felix", Borders. public class Tabbed extends JPanel { static Object[][] q = { { "Felix", Borders.](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-32.jpg)
![String[] column. Names = { "First Name", "Last Name", "Sport", "# of Years", "Vegetarian"}; String[] column. Names = { "First Name", "Last Name", "Sport", "# of Years", "Vegetarian"};](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-33.jpg)
![class Data. Model extends Abstract. Table. Model { Object[][] data = { {"one", "two", class Data. Model extends Abstract. Table. Model { Object[][] data = { {"one", "two",](https://slidetodoc.com/presentation_image_h/11c5c9f61ae86e91929770d7369d6af5/image-34.jpg)
- Slides: 34
Swing • • • štandard od Java 2 „nadmnožina awt“ – aj keď len voľne chápané komponenty sa volajú Jxxxx vlastný look-and-feel Nemiešajte awt a swing komponenty – javax. swing. event – ….
ort imp ing x. sw java . *;
awt vs. swing
import java. applet. *; import javax. swing. *; JButton public class JButton. Demo extends Applet { JButton b 1 = new JButton("JButton 1"), b 2 = new JButton("JButton 2"); JText. Field t = new JText. Field(20); public void init() { Action. Listener al = new Action. Listener() { public void action. Performed(Action. Event e){ String name = ((JButton)e. get. Source()). get. Text(); t. set. Text(name + " Pressed"); } }; b 1. add. Action. Listener(al); add(b 1); b 2. add. Action. Listener(al); add(b 2); add(t); }
JFrame public static void main(String args[]) { JButton. Demo applet = new JButton. Demo(); JFrame frame = new JFrame("Text. Area. New"); frame. add. Window. Listener(new Window. Adapter() { public void window. Closing(Window. Event e){ System. exit(0); } }); frame. get. Content. Pane(). add(applet, Border. Layout. CENTER); frame. set. Size(300, 100); applet. init(); applet. start(); frame. set. Visible(true); } }
Buttoniáda public Buttons() { add(jb); add(new JToggle. Button("JToggle. Button")); add(new JCheck. Box("JCheck. Box")); add(new JRadio. Button("JRadio. Button")); public class Buttons extends JPanel { JPanel jp = new JPanel(); jp. set. Border(new Titled. Border("Directions")); JButton jb = new JButton("JButton"); Basic. Arrow. Button up = new Basic. Arrow. Button( Basic. Arrow. Button. NORTH), down = new Basic. Arrow. Button( Basic. Arrow. Button. SOUTH), right = new Basic. Arrow. Button( Basic. Arrow. Button. EAST), left = new Basic. Arrow. Button( Basic. Arrow. Button. WEST); jp. add(up); jp. add(down); jp. add(left); jp. add(right); add(jp); } }
Grupáky public class Button. Groups extends JPanel { static String[] ids = { "zelen", "gula", "cerven", "zalud" }; static JPanel make. BPanel(Class b. Class, String[] ids) { Button. Group bg = new Button. Group(); JPanel jp = new JPanel(); String title = b. Class. get. Name(); title = title. substring( title. last. Index. Of('. ') + 1); jp. set. Border(new Titled. Border(title)); for(int i = 0; i < ids. length; i++) { Abstract. Button ab = new JButton("failed"); try { Constructor = b. Class. get. Constructor(new Class[] { String. class }); ab = (Abstract. Button)ctor. new. Instance(new Object[]{ids[i]}); } catch(Exception ex) { System. out. println("can't create " + b. Class); } public Button. Groups() { bg. add(ab); add(make. BPanel(JButton. class, ids)); jp. add(ab); add(make. BPanel(JToggle. Button. class, ids)); } return jp; add(make. BPanel(JCheck. Box. class, ids)); } add(make. BPanel(JRadio. Button. class, ids)); } }
Ikony Image. Icon implements Icon public interface Icon { void paint. Icon(Component c, Graphics g, int x, int y); int get. Icon. Width(); int get. Icon. Height(); } Icon x. Sign = new Image. Icon("x. gif"); Icon o. Sign = new Image. Icon("o. gif"); java. net. URL img. URL = Button. Demo. class. get. Resource("images/right. gif"); Image. Icon left. Button. Icon = new Image. Icon(img. URL); public class Red. Oval implements Icon { public void paint. Icon(Component c, Graphics g, int x, int y) { g. set. Color(Color. red); g. draw. Oval (x, y, get. Icon. Width(), get. Icon. Height()); } public int get. Icon. Width() { return 10; } public int get. Icon. Height() { return 10; } }
Image. Icon left. Button. Icon = new Image. Icon(. . ); Butt. Ikony . . . b 1 = new JButton("Disable middle button", left. Button. Icon); b 1. set. Vertical. Text. Position(Abstract. Button. CENTER); b 1. set. Horizontal. Text. Position(Abstract. Button. LEADING); b 1. set. Mnemonic(Key. Event. VK_D); b 1. set. Action. Command("disable"); b 1. add. Action. Listener(this); b 1. set. Tool. Tip. Text("Click this button to disable the middle button. "); public void action. Performed(Action. Event e) { if ("disable". equals(e. get. Action. Command())) { b 2. set. Enabled(false); b 1. set. Enabled(false); b 3. set. Enabled(true); }. .
import java. awt. event. *; import javax. swing. *; Ikony public class Faces extends JPanel { static Icon[] faces = { new Image. Icon("face 0. gif"), new Image. Icon("face 1. gif"), new Image. Icon("face 2. gif"), new Image. Icon("face 3. gif"), new Image. Icon("face 4. gif"), }; JButton jb = new JButton("JButton", faces[3]), jb 2 = new JButton("Disable"); boolean mad = false; public Faces() { jb. add. Action. Listener(new Action. Listener() { public void action. Performed(Action. Event e){ if(mad) { jb. set. Icon(faces[3]); mad = false; } else { jb. set. Icon(faces[0]); mad = true; } jb. set. Vertical. Alignment(JButton. TOP); jb. set. Horizontal. Alignment(JButton. LEFT); } }); jb. set. Rollover. Enabled(true); jb. set. Rollover. Icon(faces[1]); jb. set. Pressed. Icon(faces[2]); jb. set. Disabled. Icon(faces[4]); jb. set. Tool. Tip. Text("Yow!"); add(jb); jb 2. add. Action. Listener(new Action. Listener() { public void action. Performed(Action. Event e){ if(jb. is. Enabled()) { jb. set. Enabled(false); jb 2. set. Text("Enable"); } else { jb. set. Enabled(true); jb 2. set. Text("Disable"); } } }); add(jb 2); }
JLabel public class Label. Panel extends JPanel { public Label. Panel() { JLabel plain. Label = new JLabel("Plain Small Label"); add(plain. Label); JLabel fancy. Label = new JLabel("Fancy Big Label"); Font fancy. Font = new Font("Serif", Font. BOLD | Font. ITALIC, 32); fancy. Label. set. Font(fancy. Font); Icon tiger. Icon = new Image. Icon("Small. Tiger. gif"); fancy. Label. set. Icon(tiger. Icon); fancy. Label. set. Horizontal. Alignment(JLabel. RIGHT); add(fancy. Label); } } String label. Text = "<html><FONT COLOR=RED>Red</FONT> and " + "<FONT COLOR=BLUE>Blue</FONT> Text</html>"; JLabel colored. Label = new JLabel(label. Text, Label. CENTER);
Border public class Borders extends JPanel { static JPanel show. Border(Border b) { JPanel jp = new JPanel(); jp. set. Layout(new Border. Layout()); String nm = b. get. Class(). to. String(); nm = nm. substring(nm. last. Index. Of('. ') + 1); jp. add(new JLabel(nm, JLabel. CENTER), Border. Layout. CENTER); jp. set. Border(b); return jp; } public Borders() { set. Layout(new Grid. Layout(2, 4)); add(show. Border(new Titled. Border("Title"))); add(show. Border(new Etched. Border())); add(show. Border(new Line. Border(Color. blue))); add(show. Border( new Matte. Border(5, 5, 30, Color. green))); add(show. Border( new Bevel. Border(Bevel. Border. RAISED))); add(show. Border( new Soft. Bevel. Border(Bevel. Border. LOWERED))); add(show. Border(new Compound. Border( new Etched. Border(), new Line. Border(Color. red)))); } }
import java. awt. *; import java. awt. event. *; import javax. swing. event. *; JList public class List. Combo extends JPanel { JCombo. Box combo; JList list; public List. Combo() { set. Layout(new Grid. Layout(2, 1)); list = new JList(Button. Groups. ids); list. add. List. Selection. Listener(new List. Selection. Listener() { public void value. Changed(List. Selection. Event e) { int[] a = list. get. Selected. Indices(); for(int i=0; i < list. get. Selected. Indices(). length; i++) System. out. println(list. get. Selected. Indices()[i]); }}); add(new JScroll. Pane(list));
JList public void value. Changed(List. Selection. Event e) { if (e. get. Value. Is. Adjusting() == false) { if (list. get. Selected. Index() == -1) { … } else { … } } } list = new JList(data); // data: : Object[] list. set. Selection. Mode(List. Selection. Model. SINGLE_INTERVAL_SELECTION); list. set. Layout. Orientation(JList. HORIZONTAL_WRAP); . . . JScroll. Pane list. Scroller = new JScroll. Pane(list); list. Scroller. set. Preferred. Size(new Dimension(250, 80));
JCombo combo = new JCombo. Box(); for(int i = 0; i < 100; i++) combo. add. Item(Integer. to. String(i)); add(combo); combo. add. Item. Listener(new Item. Listener() { public void item. State. Changed(Item. Event e) { System. out. println(combo. get. Selected. Item()); }}); }
Slider static final int FPS_MIN = 0; static final int FPS_MAX = 30; static final int FPS_INIT = 15; //init JSlider frames. Per. Second = new JSlider(JSlider. HORIZONTAL, FPS_MIN, FPS_MAX, FPS_INIT); frames. Per. Second. add. Change. Listener(this); frames. Per. Second. set. Major. Tick. Spacing(10); frames. Per. Second. set. Minor. Tick. Spacing(1); frames. Per. Second. set. Paint. Ticks(true); frames. Per. Second. set. Paint. Labels(true); public void state. Changed(Change. Event e) { JSlider source = (JSlider)e. get. Source(); if (!source. get. Value. Is. Adjusting()) { int fps = (int)source. get. Value(); if (fps == 0) { if (!frozen) stop. Animation(); } else { delay = 1000 / fps; timer. set. Delay(delay); timer. set. Initial. Delay(delay * 10); if (frozen) start. Animation(); } } }
Progress. Bar public void action. Performed(Action. Event evt) { progress. Bar. set. Value(task. get. Current()); String s = task. get. Message(); if (s != null) { task. Output. append(s + newline); task. Output. set. Caret. Position( task. Output. get. Document(). get. Length()); } if (task. is. Done()) { Toolkit. get. Default. Toolkit(). beep(); timer. stop(); start. Button. set. Enabled(true); set. Cursor(null); //turn off the wait cursor progress. Bar. set. Value(progress. Bar. get. Minimu m()); } } JProgress. Bar progress. Bar; . . . progress. Bar = new JProgress. Bar(0, task. get. Length. Of. Task()); progress. Bar. set. Value(0); progress. Bar. set. String. Painted(true);
Slider & Progress public class Progress extends JPanel { JProgress. Bar pb = new JProgress. Bar(); JSlider sb = new JSlider(JSlider. HORIZONTAL, 0, 100, 60); public Progress() { set. Layout(new Grid. Layout(2, 1)); add(pb); sb. set. Value(0); sb. set. Paint. Ticks(true); sb. set. Major. Tick. Spacing(20); sb. set. Minor. Tick. Spacing(5); sb. set. Border(new Titled. Border("Slide Me")); pb. set. Model(sb. get. Model()); // Share model add(sb); } }
JSplit Pane split. Pane = new JSplit. Pane(JSplit. Pane. HORIZONTAL_SPLIT, list. Scroll. Pane, picture. Scroll. Pane); split. Pane. set. One. Touch. Expandable(true); split. Pane. set. Divider. Location(150); Dimension minimum. Size = new Dimension(100, 50); list. Scroll. Pane. set. Minimum. Size(minimum. Size); picture. Scroll. Pane. set. Minimum. Size(minimum. Size);
JScroll. Bar public class Scrollbar. Panel extends JPanel { public Scrollbar. Panel() { set. Layout(new Border. Layout()); JScroll. Bar scroll. Bar 1 = new JScroll. Bar (JScroll. Bar. VERTICAL, 0, 5, 0, 100); add(scroll. Bar 1, Border. Layout. EAST); JScroll. Bar scroll. Bar 2 = new JScroll. Bar (JScroll. Bar. HORIZONTAL, 0, 5, 0, 100); add(scroll. Bar 2, Border. Layout. SOUTH); } }
JText copy() cut() paste() get. Selected. Text() set. Selection. Start() set. Selection. End() select. All() replace. Selection() get. Text() set. Editable() set. Caret. Position()
JText. Field, JText. Area, JText. Pane JText. Field tf = new JText. Field(); tf. set. Text("Text. Field"); add(tf); JText. Area ta = new JText. Area(); ta. set. Text("JText. Arean Allows Multiple Lines"); add(new JScroll. Pane(ta)); JText. Pane tp = new JText. Pane(); Mutable. Attribute. Set attr = new Simple. Attribute. Set(); Style. Constants. set. Font. Family(attr, "Serif"); Style. Constants. set. Font. Size(attr, 18); Style. Constants. set. Bold(attr, true); Password. Panel() { tp. set. Character. Attributes(attr, false); JPassword. Field pass 1 = add(new JScroll. Pane(tp)); new JPassword. Field(20); JPassword. Field pass 2 = new JPassword. Field(20); pass 2. set. Echo. Char ('? '); add(pass 1); add(pass 2); }
JEditor. Pane final JEditor. Pane jt = new JEditor. Pane(); jt. set. Editable(false); jt. set. Page ("file: ///C: /borovan/JAVA/index. html"); jt. add. Hyperlink. Listener(new Hyperlink. Listener () { public void hyperlink. Update(final Hyperlink. Event e) { if (e. get. Event. Type() == Hyperlink. Event. Type. ACTIVATED) { Swing. Utilities. invoke. Later(new Runnable() { public void run() { Document doc = jt. get. Document(); try { URL url = e. get. URL(); jt. set. Page(url); input. set. Text (url. to. String()); } catch (IOException io) { JOption. Pane. show. Message. Dialog ( Browser. this, "Can't follow link", "Invalid Input", JOption. Pane. ERROR_MESSAGE); jt. set. Document (doc); } } });
Dialogs //default title and icon JOption. Pane. show. Message. Dialog(frame, “info dialog"); //custom title, warning icon JOption. Pane. show. Message. Dialog(frame, “warning dialog", "warning", JOption. Pane. WARNING_MESSAGE); //custom title, error icon JOption. Pane. show. Message. Dialog(frame, “error dialog”, "error", JOption. Pane. ERROR_MESSAGE); //custom title, custom icon JOption. Pane. show. Message. Dialog(frame, “icon", "custom", JOption. Pane. INFORMATION_MESSAGE, icon); JOption. Pane option. Pane = new JOption. Pane( "The only way to close this dialog is byn" + "pressing one of the following buttons. n" + "Do you understand? ", JOption. Pane. QUESTION_MESSAGE, JOption. Pane. YES_NO_OPTION);
Input. Dialog Object[] possibilities = {"ham", "spam", "yam"}; String s = (String)JOption. Pane. show. Input. Dialog( frame, "Complete the sentence: n" + ""Green eggs and. . . "", "Customized Dialog", JOption. Pane. PLAIN_MESSAGE, icon, possibilities, "ham"); //If a string was returned, say so. if ((s != null) && (s. length() > 0)) { set. Label("Green eggs and. . . " + s + "!"); return; }
JMenu. Bar public Object[] menu. Bar = { file. Menu, edit. Menu, face. Menu, option. Menu, help. Menu, }; static public JMenu. Bar create. Menu. Bar(Object[] menu. Bar. Data) { JMenu. Bar menu. Bar = new JMenu. Bar(); for(int i = 0; i < menu. Bar. Data. length; i++) menu. Bar. add(create. Menu((Object[][])menu. Bar. Data[i])); return menu. Bar; }
public Object[][] help. Menu = { // Menu name: { "Help", new Character('H') }, // Name type accel listener enabled { "Index", mi, new Character('I'), a 1, b. T }, { "Using help", mi, new Character('U'), a 1, b. T}, { null }, // Separator { "About", mi, new Character('t'), a 1, b. T }, }; static Button. Group bgroup; static public JMenu create. Menu(Object[][] menu. Data) { JMenu menu = new JMenu(); menu. set. Text((String)menu. Data[0][0]); menu. set. Mnemonic(((Character)menu. Data[0][1]). char. Value()); // Create redundantly, in case there any radio buttons: bgroup = new Button. Group(); for(int i = 1; i < menu. Data. length; i++) { if(menu. Data[i][0] == null) menu. add(new JSeparator()); else menu. add(create. Menu. Item(menu. Data[i])); } return menu; } JMenu
static public JMenu. Item create. Menu. Item(Object[] data) { JMenu. Item m = null; MType type = (MType)data[1]; if(type == mi) m = new JMenu. Item(); else if(type == cb) m = new JCheck. Box. Menu. Item(); else if(type == rb) { m = new JRadio. Button. Menu. Item(); bgroup. add(m); } m. set. Text((String)data[0]); m. set. Mnemonic( ((Character)data[2]). char. Value()); m. add. Action. Listener((Action. Listener)data[3]); m. set. Enabled(((Boolean)data[4]). boolean. Value()); if(data. length == 6) m. set. Icon((Icon)data[5]); return m; } JMenu. Item public Object[][] face. Menu = { { "Faces", new Character('a') }, { "Face 0", rb, new Character('0'), a 2, b. T, Faces. faces[0] },
Action& Item. Listener menu. Item = new JMenu. Item( "Both text and icon", new Image. Icon("images/middle. gif")); menu. Item. set. Mnemonic(Key. Event. VK_B); menu. add(menu. Item); public class Menu. Demo. . . implements Action. Listener, Item. Listener {. . . public Menu. Demo() { menu. Item. add. Action. Listener(this); //. . . for each JMenu. Item instance: . . . rb. Menu. Item. add. Action. Listener(this); //for each JRadio. Button. Menu. Item: . . . cb. Menu. Item. add. Item. Listener(this); //for each JCheck. Box. Menu. Item: . . . } public void action. Performed(Action. Event e) { } public void item. State. Changed(Item. Event e) { }
import java. awt. *; import java. awt. event. *; import javax. swing. *; public class Popup extends JPanel { JPopup. Menu popup = new JPopup. Menu(); JText. Field t = new JText. Field(10); Popup public Popup() { add(t); Action. Listener al = new Action. Listener() { public void action. Performed(Action. Event e){ t. set. Text( ((JMenu. Item)e. get. Source()). get. Text()); } }; JMenu. Item m = new JMenu. Item(“Cut. Me"); m. add. Action. Listener(al); popup. add(m); m = new JMenu. Item(“Copy. Me"); m. add. Action. Listener(al); popup. add(m); m = new JMenu. Item(“Paste. Me"); m. add. Action. Listener(al); popup. add(m); popup. add. Separator(); m = new JMenu. Item(“Nothing"); m. add. Action. Listener(al); popup. add(m); Popup. Listener pl = new Popup. Listener(); add. Mouse. Listener(pl); t. add. Mouse. Listener(pl); } class Popup. Listener extends Mouse. Adapter { public void mouse. Pressed(Mouse. Event e) { maybe. Show. Popup(e); } public void mouse. Released(Mouse. Event e) { maybe. Show. Popup(e); } private void maybe. Show. Popup(Mouse. Event e) { if(e. is. Popup. Trigger()) { popup. show( e. get. Component(), e. get. X(), e. get. Y()); } }
Trees class Branch { Default. Mutable. Tree. Node r; public Branch(String[] data) { r = new Default. Mutable. Tree. Node(data[0]); for(int i = 1; i < data. length; i++) r. add(new Default. Mutable. Tree. Node(data[i])); } public Default. Mutable. Tree. Node node() { return r; } } public class Trees extends JPanel { String[][] data = { { "Colors", "Red", "Blue", "Green" }, { "Flavors", "Tart", "Sweet", "Bland" }, { "Length", "Short", "Medium", "Long" }, { "Volume", "High", "Medium", "Low" }, { "Temperature", "High", "Medium", "Low" }, { "Intensity", "High", "Medium", "Low" }, }; static int i = 0; Default. Mutable. Tree. Node root, child, chosen; JTree tree; Default. Tree. Model model; public Trees() { set. Layout(new Border. Layout()); root = new Default. Mutable. Tree. Node("root"); tree = new JTree(root); add(new JScroll. Pane(tree), Border. Layout. CENTER); model =(Default. Tree. Model)tree. get. Model(); JButton test = new JButton("Press me"); test. add. Action. Listener(new Action. Listener() { public void action. Performed(Action. Event e){ if(i < data. length) { child = new Branch(data[i++]). node(); chosen = (Default. Mutable. Tree. Node) tree. get. Last. Selected. Path. Component(); if(chosen == null) chosen = root; model. insert. Node. Into(child, chosen, 0); } } }); JPanel p = new JPanel(); p. add(test); add(p, Border. Layout. SOUTH); }
public class Tabbed extends JPanel { static Object[][] q = { { "Felix", Borders. class }, { "The Professor", Buttons. class }, { "Rock Bottom", Button. Groups. class }, { "Theodore", Faces. class }, { "Simon", Menus. class }, { "Alvin", Popup. class }, { "Tom", List. Combo. class }, { "Jerry", Progress. class }, { "Bugs", Trees. class }, { "Daffy", Table. class }, }; static JPanel make. Panel(Class c) { String title = c. get. Name(); title = title. substring(title. last. Index. Of('. ') + 1); JPanel sp = null; try { sp = (JPanel)c. new. Instance(); } catch(Exception e) { System. out. println(e); } sp. set. Border(new Titled. Border(title)); return sp; } Tabbed public Tabbed() { set. Layout(new Border. Layout()); JTabbed. Pane tabbed = new JTabbed. Pane(); for(int i = 0; i < q. length; i++) tabbed. add. Tab((String)q[i][0], make. Panel((Class)q[i][1])); add(tabbed, Border. Layout. CENTER); tabbed. set. Selected. Index(q. length/2); } }
String[] column. Names = { "First Name", "Last Name", "Sport", "# of Years", "Vegetarian"}; JTable Object[][] data = { {"Mary", "Campione", "Snowboarding", new Integer(5), new Boolean(false)}, {"Alison", "Huml", "Rowing", new Integer(3), new Boolean(true)}, {"Kathy", "Walrath", "Knitting", new Integer(2), new Boolean(false)}, {"Sharon", "Zakhour", "Speed reading", new Integer(20), new Boolean(true)}, {"Philip", "Milne", "Pool", new Integer(10), new Boolean(false)} }; JTable table = new JTable(data, column. Names);
class Data. Model extends Abstract. Table. Model { Object[][] data = { {"one", "two", "three", "four"}, {"five", "six", "seven", "eight"}, {"nine", "ten", "eleven", "twelve"}, }; class TML implements Table. Model. Listener { public void table. Changed(Table. Model. Event e) { …} } Data. Model() { import java. awt. *; add. Table. Model. Listener(new TML()); import javax. swing. *; } public int get. Column. Count() { return data[0]. length; public class Table extends JPanel { } public Table() { public int get. Row. Count() { set. Layout(new Border. Layout()); return data. length; JTable table = new JTable(new Data. Model()); } public Object get. Value. At(int row, int col) { JScroll. Pane scrollpane = return data[row][col]; JTable. create. Scroll. Pane. For. Table(table); } add(scrollpane, Border. Layout. CENTER); public void set. Value. At(Object val, int row, int col) { } data[row][col] = val; public static void main(String args[]) { // Indicate the change has happened: fire. Table. Data. Changed(); Show. in. Frame(new Table(), 200); } } public boolean is. Cell. Editable(int row, int col) { } return true; } }; Table