我们从Python开源项目中,提取了以下17个代码示例,用于说明如何使用PyQt5.QtCore.Qt.TextColorRole()。
def data(self, role): if role in (Qt.EditRole, Qt.StatusTipRole): return self.formula() if role == Qt.DisplayRole: return self.display() t = str(self.display()) try: number = int(t) except ValueError: number = None if role == Qt.TextColorRole: if number is None: return QColor(Qt.black) elif number < 0: return QColor(Qt.red) return QColor(Qt.blue) if role == Qt.TextAlignmentRole: if t and (t[0].isdigit() or t[0] == '-'): return Qt.AlignRight | Qt.AlignVCenter return super(SpreadSheetItem, self).data(role)
def data(self, index: QModelIndex, role=None): row = index.row() if role == Qt.DisplayRole: if row == 0: return "not assigned" else: try: return self.participants[row-1].name + " ("+ self.participants[row-1].shortname + ")" except IndexError: return None elif role == Qt.BackgroundColorRole: if row > 0: try: return constants.PARTICIPANT_COLORS[self.participants[row-1].color_index] except IndexError: return None elif role == Qt.TextColorRole: if row > 0: try: bgcolor = constants.PARTICIPANT_COLORS[self.participants[row-1].color_index] red, green, blue = bgcolor.red(), bgcolor.green(), bgcolor.blue() return QColor("black") if (red * 0.299 + green * 0.587 + blue * 0.114) > 186 else QColor("white") except IndexError: return None
def color_oldDB_sections(self, old_section, intg_section, combo_section): """display old sections in red color. Args: old_section(str): Old sections from IS 808 1984 intg_section(str): Revised sections from IS 808 2007 combo_section(QcomboBox): Beam/Column dropdown list Returns: """ for col in old_section: if col in intg_section: indx = intg_section.index(str(col)) combo_section.setItemData(indx, QBrush(QColor("red")), Qt.TextColorRole) duplicate = [i for i, x in enumerate(intg_section) if intg_section.count(x) > 1] for i in duplicate: combo_section.setItemData(i, QBrush(QColor("red")), Qt.TextColorRole)
def data(self, index, role): value = super(CustomSqlModel, self).data(index, role) if value is not None and role == Qt.DisplayRole: if index.column() == 0: return '#%d' % value elif index.column() == 2: return value.upper() if role == Qt.TextColorRole and index.column() == 1: return QColor(Qt.blue) return value
def test_performance(self): self.cframe = self.form.compare_frame_controller self.gframe = self.form.generator_tab_controller self.form.ui.tabWidget.setCurrentIndex(2) self.cframe.ui.cbProtoView.setCurrentIndex(0) self.gframe.ui.cbViewType.setCurrentIndex(0) proto = self.__build_protocol() self.cframe.add_protocol(proto) proto.qt_signals.protocol_updated.emit() self.assertEqual(self.cframe.protocol_model.row_count, self.NUM_MESSAGES) self.assertEqual(self.cframe.protocol_model.col_count, self.BITS_PER_MESSAGE) self.__add_labels() item = self.gframe.tree_model.rootItem.children[0].children[0] index = self.gframe.tree_model.createIndex(0, 0, item) rect = self.gframe.ui.treeProtocols.visualRect(index) QTest.mousePress(self.gframe.ui.treeProtocols.viewport(), Qt.LeftButton, pos = rect.center()) self.assertEqual(self.gframe.ui.treeProtocols.selectedIndexes()[0], index) mimedata = self.gframe.tree_model.mimeData(self.gframe.ui.treeProtocols.selectedIndexes()) t = time.time() self.gframe.table_model.dropMimeData(mimedata, 1, -1, -1, self.gframe.table_model.createIndex(0, 0)) print("{0}: {1} s".format("Time for dropping mimedata", (time.time() - t))) self.assertEqual(self.gframe.table_model.row_count, self.NUM_MESSAGES) print("==============================00") indx = self.gframe.table_model.createIndex(int(self.NUM_MESSAGES / 2), int(self.BITS_PER_MESSAGE / 2)) roles = (Qt.DisplayRole, Qt.BackgroundColorRole, Qt.TextAlignmentRole, Qt.TextColorRole, Qt.FontRole) time_for_display = 100 for role in roles: t = time.time() self.gframe.table_model.data(indx, role = role) microseconds = (time.time() - t) * 10 ** 6 self.assertLessEqual(microseconds, 2 * time_for_display, msg=self.__role_to_str(role)) if role == Qt.DisplayRole: time_for_display = microseconds print("{0}: {1} µs".format(self.__role_to_str(role), microseconds))
def __role_to_str(self, role): if role == Qt.DisplayRole: return "Display" if role == Qt.BackgroundColorRole: return "BG-Color" if role == Qt.TextAlignmentRole: return "Text-Alignment" if role == Qt.TextColorRole: return "TextColor" if role == Qt.ToolTipRole: return "ToolTip" if role == Qt.FontRole: return "Font"
def data(self, index: QModelIndex, role=None): row = index.row() if role == Qt.DisplayRole: return self.plugins[row].name elif role == Qt.CheckStateRole: return self.plugins[row].enabled elif role == Qt.TextColorRole and self.plugins[row] in self.highlighted_plugins: return constants.HIGHLIGHT_TEXT_FOREGROUND_COLOR elif role == Qt.BackgroundColorRole and self.plugins[row] in self.highlighted_plugins: return constants.HIGHLIGHT_TEXT_BACKGROUND_COLOR elif role == Qt.FontRole and self.plugins[row] in self.highlighted_plugins: font = QFont() font.setBold(True) return font
def data(self, index: QModelIndex, role=None): if role == Qt.FontRole or role == Qt.TextColorRole: file_name = self.get_file_path(index) if hasattr(self, "open_files") and file_name in self.open_files: if role == Qt.FontRole: font = QFont() font.setBold(True) return font elif role == Qt.TextColorRole: return QColor("orange") return super().data(index, role)
def data(self, index: QModelIndex, role=Qt.DisplayRole): if not index.isValid(): return None i = index.row() j = index.column() if role == Qt.DisplayRole and self.display_data: try: if self.proto_view == 0: return self.display_data[i][j] elif self.proto_view == 1: return "{0:x}".format(self.display_data[i][j]) elif self.proto_view == 2: return chr(self.display_data[i][j]) except IndexError: return None elif role == Qt.TextAlignmentRole: if i in self.first_messages: return Qt.AlignHCenter + Qt.AlignBottom else: return Qt.AlignCenter elif role == Qt.BackgroundColorRole: return self.background_colors[i, j] elif role == Qt.FontRole: font = QFont() font.setBold(self.bold_fonts[i, j]) font.setItalic(self.italic_fonts[i, j]) return font elif role == Qt.TextColorRole: return self.text_colors[i, j] elif role == Qt.ToolTipRole: return self.get_tooltip(i, j) else: return None