如题,org.eclipse.swt.widgets.Spinner控件在win xp下可以编辑(输入数字),但在win 2000下无法编辑,只可以通过上下箭头改变数值大小。org.eclipse.swt.widgets.Spinner valueSpinner = new Spinner(this, SWT.BORDER);
valueSpinner.setMinimum(0); 
valueSpinner.setMaximum(99999999); 
GridData  gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
gridData.horizontalSpan = 3;
gridData.heightHint = 18; 
valueSpinner.setLayoutData(gridData);何解? 高手指教。

解决方案 »

  1.   

    网上的一个例子,有兴趣研究的可以在win 2000下跑跑。(初步认为是spinner在win 2000下的兼容问题)import org.eclipse.swt.SWT;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    import org.eclipse.swt.widgets.Spinner;public class Spinner184 {  public static void main(String[] args) {
        Display display = new Display();
        Shell shell = new Shell(display);
        Spinner spinner = new Spinner(shell, SWT.BORDER);
        spinner.setMinimum(0);
        spinner.setMaximum(1000);
        spinner.setSelection(500);
        spinner.setIncrement(1);
        spinner.setPageIncrement(100);
        spinner.pack();
        shell.pack();
        shell.open();
        while (!shell.isDisposed()) {
          if (!display.readAndDispatch())
            display.sleep();
        }
        display.dispose();
      }
    }
      

  2.   

    意想不到的原因:
    微软输入法的一个bug,低版本的微软输入法状态下导致spinner不可编辑。
    问题解决,让人无奈啊,早知如此用text控件了。