1 / 26

GUI Programming using Java - Layout Managers

Department of Computer and Information Science, School of Science, IUPUI. GUI Programming using Java - Layout Managers. Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu. Layout Managers. Layout managers Provided to arrange GUI components in a container

Télécharger la présentation

GUI Programming using Java - Layout Managers

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. Department of Computer and Information Science,School of Science, IUPUI GUI Programming using Java- Layout Managers Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu

  2. Layout Managers • Layout managers • Provided to arrange GUI components in a container • Provide basic layout capabilities • Implement the interface LayoutManager

  3. Look-and-Feel Observation 11.17 • It is possible to set a Container’s layout to null, which indicates that no layout manager should be used. In a Container without a layout manager, the programmer must position and size the components in the given container and take care that, on resize events, all components are repositioned as necessary. A component’s resize events can be processed by a ComponentListener.

  4. FlowLayout • FlowLayout • Simplest layout manager • Components are placed left to right in the order they are added • Components can be left aligned, centered or right aligned

  5. FlowLayout Demo

  6. Create FlowLayout Set layout of application Outline • FlowLayoutFrame.java • (1 of 3)

  7. Add JButton; FlowLayout will handle placement Add JButton; FlowLayout will handle placement Set alignment to left Adjust layout Set alignment to center Outline • FlowLayoutFrame.java • (2 of 3)

  8. Add JButton; FlowLayout will handle placement Set alignment to right Adjust layout Adjust layout Outline • FlowLayoutFrame.java • (3 of 3)

  9. Outline • FlowLayoutDemo.java • (1 of 2)

  10. Outline • FlowLayoutDemo.java • (2 of 2)

  11. BorderLayout • BorderLayout • Arranges components into five regions – north, south, east, west and center • Implements interface LayoutManager2 • Provides horizontal gap spacing and vertical gap spacing

  12. BorderLayout Demo

  13. Declare BorderLayout instance variable Create BorderLayout Set layout Register event handler Outline • BorderLayoutFrame.java • (1 of 2)

  14. Add buttons to application using layout manager constants Update layout Make button invisible Make button visible Outline • BorderLayoutFrame.java • (2 of 2)

  15. Outline • BorderLayoutDemo.java • (1 of 2) horizontal gap vertical gap

  16. Outline • BorderLayoutDemo.java • (2 of 2)

  17. 11.17.3 GridLayout • GridLayout • Divides container into a grid • Every component has the same width and height

  18. GridLayout Demo

  19. Set layout Declare two GridLayout instance variables Create GridLayout Outline • GridLayoutFrame.java • (1 of 2)

  20. Use second layout Add button to JFrame Use first layout Update layout Outline • GridLayoutFrame.java • (2 of 2)

  21. Outline • GridLayoutDemo.java

  22. Using Panels to Manage More Complex Layouts • Complex GUIs often require multiple panels to arrange their components properly

  23. Create JPanel Declare a JPanel to hold buttons Set layout Outline • PanelFrame.java • (1 of 2)

  24. Add button to panel Add panel to application Outline • PanelFrame.java • (2 of 2)

  25. Outline • PanelDemo.java

  26. Acknowledgements • Deitel, Java How to Program

More Related