Я создаю небольшой файловый браузер для собственного использования, в Ruby и используя Qt для представления. Идея заключается в том, что это закончится на моем телевизоре, где я могу использовать пульт для перемещения вверх и вниз и запускать файлы.Программный переход через ListView в Qt (Ruby)
Все работает нормально, пока я не перейду с помощью пульта. Мне удалось настроить службу D-Bus, поэтому я просто позвоню методам, используя LIRC.
кода я использую для создания представления выглядит следующим образом:
@dm = Qt::DirModel.new
@sm = Qt::ItemSelectionModel.new(@dm)
@lv = Qt::ListView.new
@lv.model = @dm
@lv.selectionModel = @sm
cwd = @dm.index(@dir)
@lv.rootIndex = cwd
И я не уверен, как изменить выбор. Думаю, я, должно быть, пробовал каждый набор SetIndex, setSelection и каждый метод, похожий на DirModel, ItemSelectionModel и ListView, без везения. Я искал Google и читал API, не найдя ничего.
В идеале, у меня было бы что-то вроде «moveSelectionDown» и «moveSelectionUp», который позаботится об этом, и убедиться, что он обертывается правильно. Но я ничего не могу найти.