Я работаю с JSlider, но когда я выполняю свое приложение, JSlider рисуется незавершенно.JSlider не заполнен, Работа с Netbeans
Design Время использования JSlider
Мой Java код, чтобы изменить значение, представленное:
//The first JSlider jsDur (170, 180, 190, 200)
Enumeration ed = jsDur.getLabelTable().keys();
while (ed.hasMoreElements()) {
Integer i = (Integer) ed.nextElement();
JLabel label = (JLabel) jsDur.getLabelTable().get(i);
Double d = (double)i/10.0;
label.setText(String.valueOf(i/10));
}
//The second JSlider jsAmp (26000, 28000, 30000)
Enumeration ea = jsAmp.getLabelTable().keys();
while (ea.hasMoreElements()) {
Integer i = (Integer) ea.nextElement();
JLabel label = (JLabel) jsAmp.getLabelTable().get(i);
Integer a = (int)Math.pow(2.0, (double)i/2000.0);
label.setText(a.toString());
}
Время выполнения с помощью JSlider
Проверьте jsDur со значением = 20 !!, но с использованием шрифта по умолчанию ... как jsDur, потому что я изменил шрифт jsAmp, чтобы избежать этой проблемы, но не решен.
Вопрос 2
Как Aling (слева и справа, так же велико, и такое же положение для различных JSlider-х)? Пожалуйста, проверьте изображения ...
Полного изображения во время разработки
Полного изображения в Исполнительном Time
EDIT 1 Вариант 2 Полных Код:
package JA_JF_JComboBox;
import java.util.Enumeration;
import javax.swing.JLabel;
public class JF_Test_JComboBox extends javax.swing.JFrame {
public JF_Test_JComboBox() {
initComponents();
Enumeration ed = jsDur.getLabelTable().keys();
while (ed.hasMoreElements()) {
Integer i = (Integer)ed.nextElement();
JLabel label = (JLabel)jsDur.getLabelTable().get(i);
Double d = (double)i/10.0;
label.setText(String.valueOf(i/10));
}
Enumeration ea = jsAmp.getLabelTable().keys();
while (ea.hasMoreElements()) {
Integer i = (Integer)ea.nextElement();
JLabel label = (JLabel)jsAmp.getLabelTable().get(i);
Integer a = (int)Math.pow(2.0, (double)i/2000.0);
label.setText(a.toString());
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jpMake = new javax.swing.JPanel();
jpDur = new javax.swing.JPanel();
jsDur = new javax.swing.JSlider();
jpAmp = new javax.swing.JPanel();
jsAmp = new javax.swing.JSlider();
jpT = new javax.swing.JPanel();
jsT = new javax.swing.JSlider();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jpDur.setBackground(new java.awt.Color(255, 255, 255));
jpDur.setPreferredSize(new java.awt.Dimension(1628, 56));
jsDur.setMajorTickSpacing(10);
jsDur.setMaximum(200);
jsDur.setMinorTickSpacing(2);
jsDur.setPaintLabels(true);
jsDur.setPaintTicks(true);
jsDur.setSnapToTicks(true);
jsDur.setToolTipText("");
jsDur.setName(""); // NOI18N
javax.swing.GroupLayout jpDurLayout = new javax.swing.GroupLayout(jpDur);
jpDur.setLayout(jpDurLayout);
jpDurLayout.setHorizontalGroup(
jpDurLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpDurLayout.createSequentialGroup()
.addGap(108, 108, 108)
.addComponent(jsDur, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
jpDurLayout.setVerticalGroup(
jpDurLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpDurLayout.createSequentialGroup()
.addComponent(jsDur, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jpAmp.setBackground(new java.awt.Color(255, 255, 255));
jpAmp.setFont(new java.awt.Font("Times New Roman", 0, 10)); // NOI18N
jpAmp.setPreferredSize(new java.awt.Dimension(1628, 56));
jsAmp.setMajorTickSpacing(2000);
jsAmp.setMaximum(30000);
jsAmp.setMinorTickSpacing(1000);
jsAmp.setPaintLabels(true);
jsAmp.setPaintTicks(true);
jsAmp.setSnapToTicks(true);
jsAmp.setToolTipText("");
jsAmp.setValue(30000);
jsAmp.setPreferredSize(new java.awt.Dimension(200, 45));
javax.swing.GroupLayout jpAmpLayout = new javax.swing.GroupLayout(jpAmp);
jpAmp.setLayout(jpAmpLayout);
jpAmpLayout.setHorizontalGroup(
jpAmpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpAmpLayout.createSequentialGroup()
.addGap(108, 108, 108)
.addComponent(jsAmp, javax.swing.GroupLayout.DEFAULT_SIZE, 1193, Short.MAX_VALUE)
.addContainerGap())
);
jpAmpLayout.setVerticalGroup(
jpAmpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpAmpLayout.createSequentialGroup()
.addComponent(jsAmp, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(12, 12, 12))
);
jpT.setBackground(new java.awt.Color(255, 255, 255));
jpT.setFont(new java.awt.Font("Times New Roman", 0, 10)); // NOI18N
jsT.setFont(new java.awt.Font("Times New Roman", 0, 10)); // NOI18N
jsT.setMajorTickSpacing(12);
jsT.setMaximum(128);
jsT.setMinorTickSpacing(1);
jsT.setPaintLabels(true);
jsT.setPaintTicks(true);
jsT.setSnapToTicks(true);
jsT.setToolTipText("");
jsT.setValue(69);
jsT.setPreferredSize(new java.awt.Dimension(200, 45));
javax.swing.GroupLayout jpTLayout = new javax.swing.GroupLayout(jpT);
jpT.setLayout(jpTLayout);
jpTLayout.setHorizontalGroup(
jpTLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpTLayout.createSequentialGroup()
.addGap(108, 108, 108)
.addComponent(jsT, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
jpTLayout.setVerticalGroup(
jpTLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpTLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addComponent(jsT, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
javax.swing.GroupLayout jpMakeLayout = new javax.swing.GroupLayout(jpMake);
jpMake.setLayout(jpMakeLayout);
jpMakeLayout.setHorizontalGroup(
jpMakeLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpMakeLayout.createSequentialGroup()
.addGap(6, 6, 6)
.addGroup(jpMakeLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jpAmp, javax.swing.GroupLayout.DEFAULT_SIZE, 1311, Short.MAX_VALUE)
.addComponent(jpDur, javax.swing.GroupLayout.DEFAULT_SIZE, 1311, Short.MAX_VALUE)
.addComponent(jpT, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGap(0, 70, Short.MAX_VALUE))
);
jpMakeLayout.setVerticalGroup(
jpMakeLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpMakeLayout.createSequentialGroup()
.addGap(2, 2, 2)
.addComponent(jpDur, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(28, 28, 28)
.addComponent(jpAmp, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(2, 2, 2)
.addComponent(jpT, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(39, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 1413, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jpMake, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 26, Short.MAX_VALUE)))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 206, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jpMake, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
);
pack();
}
public static void main(String args[]) {
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(JF_Test_JComboBox.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(JF_Test_JComboBox.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(JF_Test_JComboBox.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(JF_Test_JComboBox.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new JF_Test_JComboBox().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JPanel jpAmp;
private javax.swing.JPanel jpDur;
private javax.swing.JPanel jpMake;
private javax.swing.JPanel jpT;
private javax.swing.JSlider jsAmp;
private javax.swing.JSlider jsDur;
private javax.swing.JSlider jsT;
// End of variables declaration
}
Самое главное: Вы не используете 'макеты null' и' SetBounds (...) 'или любые звонки на' SetSize (...) 'или' setPreferredSize (...) 'вы? Создайте и опубликуйте небольшую/минимальную, но простую полную программу, которая иллюстрирует вашу проблему, [MCVE] (http://stackoverflow.com/help/mcve). Для получения подробной информации об этом очень полезном инструменте проверьте ссылку. –
Thks, часть кода, только с одним JSlider ... –
* «Часть кода» * Неискусственный фрагмент кода не является MCVE. Пожалуйста, перейдите по ссылке, предоставленной @HovercraftFullOfEels, и прочитайте об этом. –