2011-07-08 18 views
0

QTableViewクラスを使用してデータベースからテーブルを表示しています。私はキーボードだけを使用してユーザーがテーブルを編集できるようにしたい。QTableView(PyQt4)でのキー操作の変更

ただし、クラスのデフォルトの動作では、2回の編集後にテーブルの開始インデックスにフォーカスがリセットされます。私はセルを編集し、 "Down"キーを押し、セルを編集し、再び "Down"キーを押します。その時点でテーブルはフォーカスを失います。次にダウンキーを押すと、テーブルの最初のセルにフォーカスが移ります。

この動作を変更するにはどのクラスのメソッドを調べる必要がありますか?

私は、単一の項目選択モードを使用しています:

self.entryView = QTableView() 
    self.entryView.setModel(self.logModel) 
    self.entryView.setItemDelegate(LogDelegate(self)) 
    self.entryView.setSelectionMode(QTableView.SingleSelection) 
    self.entryView.setSelectionBehavior(QTableView.SelectItems) 

答えて

0

私は、彼らが類似しているべきである前にTreeWidgetを使用。変更後にsetCurrentItem()メソッドを呼び出して明示的に "アクティブアイテム"を指定する方法はありますか?このようにして常に正しいフォーカスを得ることができます

+0

「変更後」と言ったときにどのような時点を暗示することができますか?これはQTableViewクラスを変更することで可能ですか? –

関連する問題