1 / 14

Java Swing Application Flow

Java Swing Application Flow. By mr. Hanley 11/7/2005. How does a swing app flow?. In our Swing Applications, we have used two files, an app file and a frame file Let’s take the SnowFall Assignment as an Example. How does a swing app flow?. 1. A java application looks for a main method

Download Presentation

Java Swing Application Flow

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Java Swing Application Flow By mr. Hanley 11/7/2005

  2. How does a swing app flow? • In our Swing Applications, we have used two files, an app file and a frame file • Let’s take the SnowFall Assignment as an Example

  3. How does a swing app flow? • 1. A java application looks for a main method • import java.awt.*; • import javax.swing.*; • public class Proj2App { • public static void main(String[] args) { • Proj2Frame p = new Proj2Frame(); • p.setSize(500,400); • p.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); • p.setTitle("Project 2 Basic Mathematical Problems"); • p.setVisible(true); • }

  4. How does a swing app flow? • 2. When the first line of the main is encountered, a new Proj2Frame object is created • Proj2Frame p = new Proj2Frame(); • 3. Since we are creating a new object, a constructor is called • A constructor is a method with the same name of the class

  5. How does a swing app flow? • public Proj2Frame() { • try { • jbInit(); • } • catch (Exception ex) { • ex.printStackTrace(); • } • } • 4. All global variables are created and initialized to either 0 or null • 5. The constructor calls a method called jbInit, which stands for jbuilder initialize

  6. How does a swing app flow? • private void jbInit() throws Exception { • this.getContentPane().setLayout(null); • tabPane.setBounds(new Rectangle(30, 20, 348, 273)); • snowAvgPAN.setLayout(null); • sodaCompPAN.setLayout(null); • areaCirPAN.setLayout(null); • areaLBL.setText("Area"); • areaLBL.setBounds(new Rectangle(24, 93, 90, 24)); • areaTF.setEnabled(false); • areaTF.setEditable(false); • areaTF.setText(""); • areaTF.setBounds(new Rectangle(23, 121, 90, 25)); • cirLBL.setText("Circumference"); • cirLBL.setBounds(new Rectangle(25, 164, 90, 24));

  7. How does a swing app flow? • cirTF.setEditable(false); • cirTF.setBounds(new Rectangle(23, 190, 90, 25)); • radiusLBL.setText("Radius"); • radiusLBL.setBounds(new Rectangle(24, 21, 90, 24)); • radiusTF.setBounds(new Rectangle(23, 50, 90, 25)); • acBUT.setBounds(new Rectangle(154, 47, 90, 29)); • acBUT.setText("Find A+C"); • cost2lTF.setEditable(false); • cost2lTF.setText(""); • cost2lTF.setBounds(new Rectangle(162, 42, 112, 26)); • price6packLBL.setText("Price in $ for a 6 pack"); • price6packLBL.setBounds(new Rectangle(21, 82, 145, 18)); • cost6packTF.setEditable(false); • cost6packTF.setBounds(new Rectangle(161, 107, 112, 26)); • cost2lLBL.setText("Cost in $/L"); • cost2lLBL.setBounds(new Rectangle(161, 16, 145, 18)); • price2lTF.setBounds(new Rectangle(23, 43, 112, 26)); • cost6packLBL.setText("Cost in $/L"); • cost6packLBL.setBounds(new Rectangle(160, 81, 145, 18));

  8. How does a swing app flow? • price2lLBL.setText("Price in $ for 2 Liter"); • price2lLBL.setBounds(new Rectangle(22, 17, 145, 18)); • price6packTF.setText(""); • price6packTF.setBounds(new Rectangle(22, 108, 112, 26)); • twolRB.setText(""); • twolRB.setBounds(new Rectangle(295, 40, 107, 27)); • sixPackRB.setText("jRadioButton1"); • sixPackRB.setBounds(new Rectangle(295, 105, 16, 19)); • includeDepCBX.setText(""); • includeDepCBX.setBounds(new Rectangle(20, 154, 19, 14)); • includeDepLBL.setText("Include Deposit"); • includeDepLBL.setBounds(new Rectangle(48, 152, 100, 18)); • compareBUT.setBackground(Color.orange); • compareBUT.setBounds(new Rectangle(160, 148, 97, 26)); • compareBUT.setActionCommand("compBUT"); • compareBUT.setText("Compare"); • monTF.setText(""); • monTF.setBounds(new Rectangle(21, 32, 75, 24)); • monLBL.setText("Snow Monday"); • monLBL.setBounds(new Rectangle(17, 9, 88, 20));

  9. How does a swing app flow? • tuesTF.setBounds(new Rectangle(20, 85, 75, 24)); • tuesLBL.setText("Snow Tuesday"); • tuesLBL.setBounds(new Rectangle(17, 62, 88, 20)); • wedTF.setBounds(new Rectangle(20, 143, 75, 24)); • wedLBL.setText("Snow Wednesday"); • wedLBL.setBounds(new Rectangle(18, 120, 106, 20)); • thurTF.setBounds(new Rectangle(18, 197, 75, 24)); • thurLBL.setText("Snow Thursday"); • thurLBL.setBounds(new Rectangle(20, 174, 110, 20)); • friTF.setBounds(new Rectangle(165, 32, 75, 24)); • friLBL.setText("Snow Friday"); • friLBL.setBounds(new Rectangle(166, 8, 88, 20)); • avgBUT.setBounds(new Rectangle(160, 68, 90, 74)); • avgBUT.setIcon(flakeIC); • avgBUT.setText("Average"); • avgTF.setEditable(false); • avgTF.setBounds(new Rectangle(164, 195, 75, 24));

  10. How does a swing app flow? • avgLBL.setText("Average"); • avgLBL.setBounds(new Rectangle(166, 172, 88, 20)); • this.getContentPane().add(tabPane); • snowAvgPAN.add(tuesLBL); • snowAvgPAN.add(tuesTF); • snowAvgPAN.add(monTF); • snowAvgPAN.add(wedLBL); • snowAvgPAN.add(wedTF); • snowAvgPAN.add(thurLBL); • snowAvgPAN.add(thurTF); • snowAvgPAN.add(friTF); • snowAvgPAN.add(friLBL); • snowAvgPAN.add(avgBUT); • snowAvgPAN.add(avgTF); • snowAvgPAN.add(avgLBL); • snowAvgPAN.add(monLBL); • tabPane.add(areaCirPAN, "Area/Cir");

  11. How does a swing app flow? • areaCirPAN.add(areaTF); • areaCirPAN.add(radiusTF); • areaCirPAN.add(cirLBL); • areaCirPAN.add(radiusLBL); • areaCirPAN.add(cirTF); • areaCirPAN.add(areaLBL); • areaCirPAN.add(acBUT); • sodaCompPAN.add(price6packLBL); • sodaCompPAN.add(price2lTF); • sodaCompPAN.add(price2lLBL); • sodaCompPAN.add(cost2lLBL); • sodaCompPAN.add(cost6packLBL); • sodaCompPAN.add(cost6packTF); • sodaCompPAN.add(cost2lTF); • sodaCompPAN.add(price6packTF);

  12. How does a swing app flow? • sodaCompPAN.add(twolRB); • sodaCompPAN.add(sixPackRB); • sodaCompPAN.add(includeDepCBX); • sodaCompPAN.add(includeDepLBL); • sodaCompPAN.add(compareBUT); • tabPane.add(sodaCompPAN, "Compare Sodas"); • tabPane.add(snowAvgPAN, "Snow Fall"); • acBUT.addActionListener(this); • compareBUT.addActionListener(this); • avgBUT.addActionListener(this); • }

  13. How does a swing app flow? • 6, Now that the initialize method is done, the app sends various messages to the frame • P.setsize • P.setTitle • P.setVisible • P.setDefaultCloseOp

  14. How does a swing app flow? • 7. The application waits for user initiated events • 8. These trigger the actionPerformed method • 9. The app file is essentially done at this point in time

More Related