问题
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 (e.g. 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?
回答1:
This looks promising: Creating a Java Swing range slider
And here's another example that I think came from the old Tame examples: MThumbSlider
回答2:
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.
来源:https://stackoverflow.com/questions/15687521/how-to-specify-a-range-of-valid-values-in-a-java-gui