简体   繁体   中英

How to specify a range of valid values in a Java GUI

I am creating an IMDB application which displays and organizes movies found on you computer (by looking up the metadata via an IMDB API).

In my search panel I want to give the user the option of looking for movies that were released in a specific range of years (eg between 1990 and 2005). Currently I use for this two JSpinners, one for the minimum year and one for the maximum year and use cross validation to check whether maxYear >= minYear && minYear <= maxYear However I don't think this is very user-friendly.

What I would like is a JSlider with two knobs, one for min and one for max. Is this possible? Do you have any other ideas on how to make this interface more user-friendly?

You could have two JTextFields, and just let the user type the minimum and maximum years.

Otherwise, two JSpinners is another choice. Developing a custom component that your users have never seen is not user friendly.

You can cross connect the two JSpinners so that it's impossible for the user to enter a minimum year greater than a maximum year. I've not done this, so I don't have a code example to show you.

This looks promising: Creating a Java Swing range slider

And here's another example that I think came from the old Tame examples: MThumbSlider

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM