Кнопка на вертикальном JSlider's на моей машине Windows 7 (с собственным стилем) действительно, действительно крошечная в обоих направлениях. Не только тощий, но и короткий также.
Кто-либо может подтвердить это? Я должен сообщить об этом? Если так, где?Спасибо!
Вот код для примера программы (в снимке экрана):
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.SwingConstants;
import javax.swing.UIManager;
public class SliderTest
{
public static void main( String[] args )
{
// Set the look and feel to that of the system
try
{ UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() ); }
catch ( Exception e )
{ System.err.println( e ); }
// Launch the GUI from the event dispatch thread
javax.swing.SwingUtilities.invokeLater( new Runnable()
{
public void run ()
{
JFrame window = new JFrame();
window.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
JPanel contentPane = new JPanel();
contentPane.add( new JSlider(SwingConstants.HORIZONTAL) );
contentPane.add( new JSlider(SwingConstants.VERTICAL) );
window.setContentPane( contentPane );
window.pack();
window.setLocationRelativeTo( null ); // Center window
window.setVisible( true );
}
});
}
}
Во-первых, это происходит и в Windows Vista. Похоже, слайдер старается занимать как можно меньше места. Если вам нужен JSlider
большего размера, используйте JSlider.setPaintTicks
. Итак, вы должны добавить следующее:
JSlider vertical = new JSlider( SwingConstants.VERTICAL );
vertical.setPaintTicks( true );
contentPane.add( vertical );
Это должно помочь.