私はRubyで自分用の小さなファイルブラウザを作っています。私のテレビでは、リモコンを使って上下に移動してファイルを起動することができます。Qt(Ruby)のListViewを使ってプログラム的に移動
リモートを使用して選択項目を移動するまで、すべてうまく動作します。私は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
そして、私が選択を変更する方法がわかりませんよ。 DirModel、ItemSelectionModel、およびListViewでは、すべてのsetIndex、setSelection、およびすべてのメソッドが似ていると試してみる必要があると思います。私はグーグルで何も見つけずにAPIを読んでいました。
理想的には、「moveSelectionDown」と「moveSelectionUp」のようなものがあり、それを処理して正しくラップすることができます。しかし、私は何かを見つけることができません。