Skip to content

Instantly share code, notes, and snippets.

@enkore
Created August 15, 2018 09:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save enkore/727e3f912c8f9380017fb78591f2a05e to your computer and use it in GitHub Desktop.
Save enkore/727e3f912c8f9380017fb78591f2a05e to your computer and use it in GitHub Desktop.
from PySide2 import QtWidgets, QtCore
class MyTableView(QtWidgets.QTableView):
SECTION_SIZE = 70
def __init__(self, parent=None):
super(MyTableView, self).__init__(parent)
def setModel(self, mdl):
super().setModel(mdl)
header = self.horizontalHeader()
header.setSectionResizeMode(0, QtWidgets.QHeaderView.Interactive)
header.setSectionResizeMode(1, QtWidgets.QHeaderView.Interactive)
header.setSectionResizeMode(2, QtWidgets.QHeaderView.Interactive)
header.setSectionResizeMode(3, QtWidgets.QHeaderView.Interactive)
header.setSectionResizeMode(4, QtWidgets.QHeaderView.Stretch)
header.setSectionResizeMode(5, QtWidgets.QHeaderView.Fixed)
header.setStretchLastSection(True)
class MyModel(QtCore.QAbstractTableModel):
def __init__(self, parent=None):
super(MyModel, self).__init__(parent)
self.header_labels = ['Thumbnail', 'File name', 'Version', 'Read name', 'Status', 'Show']
self.data_ = range(10)
def data(self, index, role):
if role == QtCore.Qt.DisplayRole:
return self.data_[index.row()]
def rowCount(self, index=None):
return len(self.data_)
def columnCount(self, index=None):
return len(self.header_labels)
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication([])
model = MyModel()
view = MyTableView()
view.setModel(model)
view.show()
view.raise_()
sys.exit(app.exec_())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment