/** This example is from javareference.com* for more information visit,* http://www.javareference.com*///import statementsimportjava.awt.FlowLayout;importjava.awt.GridLayout;importjavax.swing.*;importjava.util.*;/*** SpinnerFrame.java* The Frame adding three different types of* Spinner Components** @author Rahul Sapkal([email removido])*/publicclassSpinnerFrameextendsJFrame{privateJSpinnerm_listSpinner;privateJSpinnerm_numberSpinner;privateJSpinnerm_dateSpinner;privateSpinnerListModelm_listSpinnerModel;privateSpinnerNumberModelm_numberSpinnerModel;privateSpinnerDateModelm_dateSpinnerModel;//constructorpublicSpinnerFrame(){super("JSpinner Demonstration");//creating the list spinnercreateListSpinner();//creating the number spinnercreateNumberSpinner();//creating the date spinnercreateDateSpinner();//adding Spinners to the framethis.getContentPane().setLayout(newFlowLayout());JPanelspinnerPanel=newJPanel(newGridLayout(3,1,5,5));spinnerPanel.add(m_listSpinner);spinnerPanel.add(m_numberSpinner);spinnerPanel.add(m_dateSpinner);this.getContentPane().add(spinnerPanel);}privatevoidcreateNumberSpinner(){//current valueDoublecurrent=newDouble(5.50);//Min valueDoublemin=newDouble(0.00);//Max valueDoublemax=newDouble(10.00);//Step valueDoublestep=newDouble(0.25);//creating the number spinner modelm_numberSpinnerModel=newSpinnerNumberModel(current,min,max,step);//creating the number spinnerm_numberSpinner=newJSpinner(m_numberSpinnerModel);}privatevoidcreateDateSpinner(){CalendarrightNow=Calendar.getInstance();//current dateDatecurrent=rightNow.getTime();//Start date, yesterday, same timerightNow.set(Calendar.HOUR_OF_DAY,-24);Datestart=rightNow.getTime();//End date, tomorrow, same timerightNow.set(Calendar.HOUR_OF_DAY,48);Dateend=rightNow.getTime();//Step value, in this case Hourintstep=Calendar.HOUR_OF_DAY;//creating the date spinner modelm_dateSpinnerModel=newSpinnerDateModel(current,start,end,step);//creating the date spinnerm_dateSpinner=newJSpinner(m_dateSpinnerModel);}privatevoidcreateListSpinner(){//Creating ordered sequence listListsequence=newArrayList();sequence.add(newString("I - First"));sequence.add(newString("II - Second"));sequence.add(newString("III - Third"));sequence.add(newString("IV - Fourth"));sequence.add(newString("V - Fifth"));sequence.add(newString("VI - Sixth"));//creating the list spinner modelm_listSpinnerModel=newSpinnerListModel(sequence);//creating the list spinnerm_listSpinner=newJSpinner(m_listSpinnerModel);}publicstaticvoidmain(Stringargv[]){SpinnerFramespinnerFrame=newSpinnerFrame();spinnerFrame.setSize(350,200);spinnerFrame.setVisible(true);}}
velo
fiquei com uma dúvida…
quero adicionar 2 desses spinners, digamos com o valor 10 em cada um. Quando eu incrementar um, quero decrementar o outro (um fica com 11 e o outro com 9).
Alguem sabe com fazer isso?
VELO
Lucas_Teixeira
velo:
fiquei com uma dúvida…
quero adicionar 2 desses spinners, digamos com o valor 10 em cada um. Quando eu incrementar um, quero decrementar o outro (um fica com 11 e o outro com 9).
Alguem sabe com fazer isso?
VELO
um listener para eles resolveria não? Uma idéia seria identificar se foi incremento (X) ou decremento (Y), após isto verificar de qual componente que veio, aí é só um teste de lógica.
Outra alternativa, seria identificar um valor máximo e a cada interação do usuario seria fazer: