Med kunstig intelligens skaber HP’s nye OmniBook X 14 en unik og skræddersyet brugeroplevelse målrettet dem, der ønsker høj ydeevne og intelligente funktioner
Og så lige et tillægsspørgsmål: Er der en måde hvorpå man kan få en JSpinner til at få sig til at bevæge sig i ryk af forskellige intervaller i forskellige intervaller?
altså, f.eks:
fra 0 - 10: ryk af 0,1 fra 10 - 20: ryk af 0,5 fra 20 - 30: ryk af 1
SpinnerNumberModel arbejder med Objects, så du er nødt til at wrappe 20 ind i en integer: ti_halvtreds.setValue(new Integer(20));
og til tillægsspørgsmålet: du kan løse problemet ved at lave en subclass til SpinnerNumberModel, hvor du overrider metoderne getNextValue():Object, og getPreviousValue():Object
du kan så lægge dine ryk ind i en datastruktur, og så returnere dem, når getNextValue, og getPreviousValue kaldes.
public static void main(String[] args){ new Test(); } public Test(){ getContentPane().add(spinner = new JSpinner(new MySpinnerNumberModel())); spinner.setValue(new Integer(21)); setSize(100, 100); setVisible(true); } private class MySpinnerNumberModel extends SpinnerNumberModel{ //en liste indeholder jspinnerens tal private ArrayList items = new ArrayList(); //hvilket index i listen er det viste int index = 0; public MySpinnerNumberModel(){ //fyld items i listen for (double i = 0; i<=10; i+=0.1) { items.add(new Double(i)); } for (double i = 10.5; i<=20; i+=0.5) { items.add(new Double(i)); }
for (double i = 21; i<=30; i+=1) { items.add(new Double(i)); } } public Object getNextValue(){ //tæl index op if(index<items.size()-1)index++; return items.get(index); } public Object getValue(){ return items.get(index); } public Object getPreviousValue(){ //til index ned, kun til 0 if(index>0)index--; return items.get(index); } } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.