ファイルからのユーザーのリストをtablewidgetまたはtableviewの最初の行に挿入したいとします。私は現在、テーブルウィジェットで試しています。これまでのところ、コードはthis投稿からの回答を見た後に思いついたものです。基本的にイメージを見ると、私はそれを正確にやろうとしていますし、後でそのアクションを実行するためにokボタンを追加します。qtablewidgetまたはqtableviewの最初の列にファイルからデータを挿入するにはどうすればよいですか?
from PyQt4 import QtGui, QtCore
class Window(QtGui.QWidget):
def __init__(self, rows, columns):
QtGui.QWidget.__init__(self)
self.table = QtGui.QTableWidget(rows, columns, self)
self.table.setHorizontalHeaderItem(0, QtGui.QTableWidgetItem("Users"))
self.table.setHorizontalHeaderItem(1, QtGui.QTableWidgetItem("Delete User"))
self.table.setHorizontalHeaderItem(2, QtGui.QTableWidgetItem("Delete User and Home"))
self.table.verticalHeader().hide()
header = self.table.horizontalHeader()
header.setStretchLastSection(True)
for column in range(columns):
if column == 0:
with open("users") as input:
if input is not None:
users = input.readlines()
for line in users:
users = QtGui.QTableWidgetItem(line)
print line
input.close()
for row in range(rows):
if column % 3:
item = QtGui.QTableWidgetItem('%d' % column)
item.setFlags(QtCore.Qt.ItemIsUserCheckable |
QtCore.Qt.ItemIsEnabled)
item.setCheckState(QtCore.Qt.Unchecked)
self.table.setItem(row, column, item)
self.table.itemClicked.connect(self.handleItemClicked)
layout = QtGui.QVBoxLayout(self)
layout.addWidget(self.table)
self._list = []
def handleItemClicked(self, item):
if item.checkState() == QtCore.Qt.Checked:
print('"%s" Checked' % item.text())
self._list.append(item.row())
print(self._list)
else:
print('"%s" Clicked' % item.text())
if __name__ == '__main__':
import sys
app = QtGui.QApplication(sys.argv)
window = Window(6, 3)
window.resize(400, 400)
window.show()
sys.exit(app.exec_())
だから、正確に問題は何ですか?コードは、あなたが期待していることをどれくらいまでしていませんか? – ImportanceOfBeingErnest
'ifカラム== 0:'ブロックは私が期待していることをしません。 – answerSeeker
(a)あなたのコードでは、Pythonの単語 'input'を変数名として使います。決してそれをしないでください! (b) 'users'をループし、' users'をそのループの 'QTableWidgetItem'に再割り当てします。その後、 'users'は決して再び使用されません。だから私はあなたが何を期待しているのか分からず、本当にあなたの期待について具体的にする必要があります。 "私はこのコードを....と期待している"のような文を書く。 – ImportanceOfBeingErnest