Skip to Content
Java Swing
book

Java Swing

by Robert Eckstein, Marc Loy, Dave Wood
September 1998
Intermediate to advanced
1258 pages
42h 57m
English
O'Reilly Media, Inc.
Content preview from Java Swing

Menu Bar Selection Models

In all GUI environments, menu components only allow one selection to be made at a time. Swing is no exception. Swing provides a data model that menubars and menus can use to emulate this behavior: the SingleSelectionModel.

The SingleSelectionModel Interface

Objects implementing the SingleSelectionModel interface do exactly what the name suggests: they maintain an array of possible selections, and allow one element in the array to be chosen at a time. The model holds the index of the selected element. If a new element is chosen, the model resets the index representing the chosen element and fires a ChangeEvent to each of the registered listeners.

Properties

Objects implementing the SingleSelectionModel interface contain the properties shown in Table 14.1. The selectedIndex property is an integer index that represents the currently selected item. The selected property is a boolean that tells if there is a selection.

Table 14-1. SingleSelectionModel Properties

Property

Data Type

get

is

set

bound

Default Value

selected

boolean

 

•

   

selectedIndex

int

•

 

•

  

Events

Objects implementing the SingleSelectionModel interface must fire a ChangeEvent (not a PropertyChangeEvent) when the object modifies its selectedIndex property, i.e., when the selection has changed. The interface contains the standard addChangeListener() and removeChangeListener() methods for maintaining a list of ChangeEvent listeners.

void addChangeListener(ChangeListener ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Java GUI Development: The Authoritative Solution

Java GUI Development: The Authoritative Solution

Vartan Piroumian
Java 11 Cookbook - Second Edition

Java 11 Cookbook - Second Edition

Nick Samoylov, Mohamed Sanaulla
Java 9 Dependency Injection

Java 9 Dependency Injection

Nilang Patel, Krunal Patel
Java 9: Building Robust Modular Applications

Java 9: Building Robust Modular Applications

Dr. Edward Lavieri, Peter Verhas, Jason Lee

Publisher Resources

ISBN: 156592455XCatalog PageErrata