2016-10-28 4 views
0

QtableViewの要素にはどのようにアクセスできますか? 行self.tableView.item(1,1)はsemが機能しませんか? エラーが発生しましたAttributeError: 'QTableView' object has no attribute 'item'QTableViewの特定の要素/項目にアクセスしますか?

QTableViewの特定の要素にアクセスするにはどうすればよいですか(3,4)?あなたはQTableViewQStandardItemModelを使用している

+0

私が知る限り、QTableViewにはアイテム属性はありません。 [ドキュメンテーション](http://pyqt.sourceforge.net/Docs/PyQt4/qtableview.html)によると、self.tableView.rowAt(3).columnAt(1) – mutantkeyboard

+1

@mutantkeyboard self.tableView.rowAt 3).columnAt(1)は機能しません。 AttributeError: 'int'オブジェクトに 'ColumnAt'属性がありません – learncode

+0

コード全体が表示されず、選択しようとしていますか?視覚的な選択が必要な場合は、 'self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows)'のようなことをすることができます。クリックした行が選択されます。特定のセルをターゲットにする場合は、 'QModelIndex indexAt'メソッド – mutantkeyboard

答えて

1

私は、あなたがこれを行うことができます。

model = self.tableView.model() 
item = model.item(1, 1) 

EDIT:あなたは項目のテキストをしたい場合は

は、あなたが行うことができます:

text = item.text() 

その他の項目については、QStandardItemを参照してください。

+1

self.model.item(1,1)は、アイテムの値ではなくアイテムの場所(0x0000000007FAA0D8の )を返します。少し違うのですか?私はPyQt4を使用しています。 @VenkataNarsiReddyVaddula。 – learncode

+1

はい、アイテムを返します。これはあなたが求めていたものです。アイテムのテキストが必要な場合は、 'text = item.text()'だけが必要です。 – ekhumoro

+1

申し訳ありませんが、私はそれを目的にしていませんでした。 – learncode

関連する問題