3
안녕하세요, MVC 레이아웃을 사용하여 게임을 만들고 JSlider를 표시 할 수 없습니다. 완전히 작동하지만 창을 확장하지 않으면 표시되지 않습니다. 내 SliderView 클래스는 여기 `공공 무효 startView() {창이 확장되지 않으면 JSlider가 표시되지 않습니다.
playerXPosition = 5; // Initializing the X position
playerYPosition = 80; // Initializing the Y position
score = 0;
tds = 0;
level = 1;
lives = 3;
MyPanel drawingWindow = new MyPanel();
drawingWindow.setSize(800, 500);
drawingWindow.setVisible(true);
this.add(drawingWindow);
SliderView jSlider = new SliderView();
jSlider.setSize(this.getWidth()/4, 50);
jSlider.setAlignmentX((this.getWidth()/2) - (this.getWidth()/2));
jSlider.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
int tacklerspeed = jSlider.getValue();
getGameController().updateRatio(tacklerspeed);
System.out.println("Speed changed ");
System.out.println(tacklerspeed);
}
});
this.setSize(800, 700);
this.setVisible(true);
this.add(jSlider, BorderLayout.NORTH);
drawingWindow.setFocusable(true);
}`
을 그리고 : 여기에 GameView에 JSlider에를 만들어 내 방법은 '공용 클래스 SliderView는 {
public SliderView() {
this.setEnabled(true);
this.setPaintTicks(true);
this.setMaximum(2);
this.setVisible(true);
this.setFocusable(false);
this.setValue(1);
this.setSnapToTicks(true);
}
}`
JSlider에 확장
작동합니다! 고맙습니다! – Steve