public void stateChanged(ChangeEvent ce) {
if(ce.getSource() == this.xSlider) {
this.procedureToProcessXSlider();
}
}
但是如果這個procedureToProcessXSlider()裡面有幾百行怎麼辦?每拉動一個刻度都會發出event哦,如果把JSlider從75拉到174,這樣就會發出100次event,莫名其妙就執行了幾萬行程式碼,正式的解法我還沒有去網路上找過,不過我自己是這樣解的:
public void stateChanged(ChangeEvent ce) {
if(ce.getSource() == this.xSlider) {
if(!this.xSlider.getValueIsAdjusting()) {
this.procedureToProcessXSlider();
}
}
}
沒有留言:
張貼留言