我从MidiDevice.info对象的数组列表中填充了一个组合框,以允许用户选择其中一个对象,然后我需要使用这些对象,但我无法从组合框中获得所选的对象
ArrayList<MidiDevice.Info> devices= new ArrayList<MidiDevice.Info>();
MidiDevice.Info[] infos = MidiSystem.getMidiDeviceInfo();
for(int i=0;i<infos.length;i++)
{
System.out.println(infos[i].getName() + " - " + infos[i].getDescription());
devices.add(infos[i]);
}
ObservableList<MidiDevice.Info> devicelist = FXCollections.observableArrayList(devices);
ComboBox drop = new ComboBox();
drop.setItems(devicelist);
以上操作正常,组合框具有所有值
我的下一行是
MidiDevice inputdevice = MidiSystem.getMidiDevice(c);
这是我的第一个选择 我需要用组合框中的选定项替换devicelist.get(0),并且drop.getValue返回错误
Error:(43, 72) java: incompatible types: java.lang.Object cannot be converted
to javax.sound.midi.MidiDevice.Info