本文整理汇总了Python中PyQt5.Qt.QTableView.setRowHeight方法的典型用法代码示例。如果您正苦于以下问题:Python QTableView.setRowHeight方法的具体用法?Python QTableView.setRowHeight怎么用?Python QTableView.setRowHeight使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyQt5.Qt.QTableView
的用法示例。
在下文中一共展示了QTableView.setRowHeight方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: AnnotatedBooksDialog
# 需要导入模块: from PyQt5.Qt import QTableView [as 别名]
# 或者: from PyQt5.Qt.QTableView import setRowHeight [as 别名]
#.........这里部分代码省略.........
# Hide the vertical self.header
self.tv.verticalHeader().setVisible(False)
# Hide uuid, book_id, genre, confidence
self.tv.hideColumn(self.annotations_header.index('uuid'))
self.tv.hideColumn(self.annotations_header.index('book_id'))
self.tv.hideColumn(self.annotations_header.index('genre'))
self.tv.hideColumn(self.annotations_header.index('Confidence'))
# Set horizontal self.header props
self.tv.horizontalHeader().setStretchLastSection(True)
narrow_columns = ['Last Annotation', 'Reader App', 'Annotations']
extra_width = 10
breathing_space = 20
# Set column width to fit contents
self.tv.resizeColumnsToContents()
perfect_width = 10 + (len(narrow_columns) * extra_width)
for i in range(3, 8):
perfect_width += self.tv.columnWidth(i) + breathing_space
self.tv.setMinimumSize(perfect_width, 100)
self.perfect_width = perfect_width
# Add some width to narrow columns
for nc in narrow_columns:
cw = self.tv.columnWidth(self.annotations_header.index(nc))
self.tv.setColumnWidth(self.annotations_header.index(nc), cw + extra_width)
# Set row height
fm = QFontMetrics(self.FONT)
nrows = len(self.tabledata)
for row in xrange(nrows):
self.tv.setRowHeight(row, fm.height() + 4)
self.tv.setSortingEnabled(True)
sort_column = self.opts.prefs.get('annotated_books_dialog_sort_column',
self.annotations_header.index('Confidence'))
sort_order = self.opts.prefs.get('annotated_books_dialog_sort_order',
Qt.DescendingOrder)
self.tv.sortByColumn(sort_column, sort_order)
# ~~~~~~~~ Create the ButtonBox ~~~~~~~~
self.dialogButtonBox = QDialogButtonBox(QDialogButtonBox.Cancel | QDialogButtonBox.Help)
self.dialogButtonBox.setOrientation(Qt.Horizontal)
self.import_button = self.dialogButtonBox.addButton(self.dialogButtonBox.Ok)
self.import_button.setText('Import Annotations')
# Action buttons
self.toggle_checkmarks_button = self.dialogButtonBox.addButton('Clear All', QDialogButtonBox.ActionRole)
self.toggle_checkmarks_button.setObjectName('toggle_checkmarks_button')
scb_text = 'Show match status'
if self.show_confidence_colors:
scb_text = "Hide match status"
self.show_confidence_button = self.dialogButtonBox.addButton(scb_text, QDialogButtonBox.ActionRole)
self.show_confidence_button.setObjectName('confidence_button')
if self.show_confidence_colors:
self.show_confidence_button.setIcon(get_icon('images/matches_hide.png'))
else:
self.show_confidence_button.setIcon(get_icon('images/matches_show.png'))
self.preview_button = self.dialogButtonBox.addButton('Preview', QDialogButtonBox.ActionRole)
self.preview_button.setObjectName('preview_button')
self.dialogButtonBox.clicked.connect(self.show_annotated_books_dialog_clicked)
示例2: OpdsDialog
# 需要导入模块: from PyQt5.Qt import QTableView [as 别名]
# 或者: from PyQt5.Qt.QTableView import setRowHeight [as 别名]
#.........这里部分代码省略.........
firstCatalogTitle = catalogsTuple[0]
self.currentOpdsCatalogs = catalogsTuple[1] # A dictionary of title->feedURL
self.opdsCatalogSelectorModel.setStringList(self.currentOpdsCatalogs.keys())
self.opdsCatalogSelector.setCurrentText(firstCatalogTitle)
def setHideNewspapers(self, checked):
prefs['hideNewspapers'] = checked
self.model.setFilterBooksThatAreNewspapers(checked)
self.resizeAllLibraryViewLinesToHeaderHeight()
def setHideBooksAlreadyInLibrary(self, checked):
prefs['hideBooksAlreadyInLibrary'] = checked
self.model.setFilterBooksThatAreAlreadyInLibrary(checked)
self.resizeAllLibraryViewLinesToHeaderHeight()
def searchBookList(self):
searchString = self.searchEditor.text()
print "starting book list search for: %s" % searchString
self.searchproxymodel.setFilterFixedString(searchString)
def about(self):
text = get_resources('about.txt')
QMessageBox.about(self, 'About the OPDS Client plugin', text.decode('utf-8'))
def download_opds(self):
opdsCatalogUrl = self.currentOpdsCatalogs.get(self.opdsCatalogSelector.currentText(), None)
if opdsCatalogUrl is None:
# Just give up quietly
return
self.model.downloadOpdsCatalog(self.gui, opdsCatalogUrl)
if self.model.isCalibreOpdsServer():
self.model.downloadMetadataUsingCalibreRestApi(self.opdsUrlEditor.currentText())
self.library_view.horizontalHeader().setSectionResizeMode(0, QHeaderView.Stretch)
self.library_view.horizontalHeader().setSectionResizeMode(1, QHeaderView.Stretch)
self.library_view.horizontalHeader().setSectionResizeMode(2, QHeaderView.Stretch)
self.resizeAllLibraryViewLinesToHeaderHeight()
self.resize(self.sizeHint())
def config(self):
self.do_user_config(parent=self)
def downloadSelectedBooks(self):
selectionmodel = self.library_view.selectionModel()
if selectionmodel.hasSelection():
rows = selectionmodel.selectedRows()
for row in reversed(rows):
book = row.data(Qt.UserRole)
self.downloadBook(book)
def downloadBook(self, book):
if len(book.links) > 0:
self.gui.download_ebook(book.links[0])
def fixBookTimestamps(self):
selectionmodel = self.library_view.selectionModel()
if selectionmodel.hasSelection():
rows = selectionmodel.selectedRows()
for row in reversed(rows):
book = row.data(Qt.UserRole)
self.fixBookTimestamp(book)
def fixBookTimestamp(self, book):
bookTimestamp = book.timestamp
identicalBookIds = self.findIdenticalBooksForBooksWithMultipleAuthors(book)
bookIdToValMap = {}
for identicalBookId in identicalBookIds:
bookIdToValMap[identicalBookId] = bookTimestamp
if len(bookIdToValMap) < 1:
print "Failed to set timestamp of book: %s" % book
self.db.set_field('timestamp', bookIdToValMap)
def findIdenticalBooksForBooksWithMultipleAuthors(self, book):
authorsList = book.authors
if len(authorsList) < 2:
return self.db.find_identical_books(book)
# Try matching the authors one by one
identicalBookIds = set()
for author in authorsList:
singleAuthorBook = Metadata(book.title, [author])
singleAuthorIdenticalBookIds = self.db.find_identical_books(singleAuthorBook)
identicalBookIds = identicalBookIds.union(singleAuthorIdenticalBookIds)
return identicalBookIds
def dummy_books(self):
dummy_author = ' ' * 40
dummy_title = ' ' * 60
books_list = []
for line in range (1, 10):
book = DynamicBook()
book.author = dummy_author
book.title = dummy_title
book.updated = datetime.datetime.now().strftime('%Y-%m-%dT%H:%M:%S+00:00')
book.id = ''
books_list.append(book)
return books_list
def resizeAllLibraryViewLinesToHeaderHeight(self):
rowHeight = self.library_view.horizontalHeader().height()
for rowNumber in range (0, self.library_view.model().rowCount()):
self.library_view.setRowHeight(rowNumber, rowHeight)