示例#1
0
	def on_btnSetHeader_clicked(self):
		'''
		设置表头
		表内的每个单元格都是一个QTableWidgetItem对象
		QTableWidgetItem对象实例化一共有4种方式
		    QTableWidgetItem(type: int = QTableWidgetItem.ItemType.Type):构建一个空项
		        type:默认是0
            QTableWidgetItem(str, type: int = QTableWidgetItem.ItemType.Type):构建一个带文本的项
                str:字符串
                type:是一个int,系统(Qt)保留0~1000,用户自定义需要从1001开始
            QTableWidgetItem(QIcon, str, type: int = QTableWidgetItem.ItemType.Type):构建一个带图标和文本的项
                QIcon:图标,str:字符串,
            QTableWidgetItem(QTableWidgetItem):从other复制项的内容构建一个新项

		type 参数主要为为了派生类使用,其类型为枚举类型QTableWidgetItem.ItemType,QTableWidgetItem创建的项使用缺省值QTreeWidgetItem.Type(值为0)。
		如果要从QTableWidgetItem派生子类以为应用提供自定义项时,可以为子类定义新类型,以便可以将它们与QTableWidgetItem项区分开来。
		需要此功能的子类的构造函数需要使用等于或大于QTableWidgetItem.UserType(对应整型1000)的新类型值。



		:return:
		'''
		headerText = ['姓名','性别','出生日期','民族','是否党员','分数']
		self.ui.tableInfo.setColumnCount(len(headerText))#设置列数
		for i in range(len(headerText)):
			headerItem = QTableWidgetItem(headerText[i])#实例化一个单元格,参数为单元格名称
			# print(headerItem.type())
			font = headerItem.font()#获取该单元格字体状态
			font.setPointSize(11)#为字体设置字号
			headerItem.setFont(font)#将字号大小绑定给该单元格
			headerItem.setForeground(QBrush(Qt.red))#设置单元格前景色,文字颜色
			#将该单元格设置为第i列的表头
			self.ui.tableInfo.setHorizontalHeaderItem(i,headerItem)
示例#2
0
    def showResult(self, data):
        if len(data) == 6:
            for temp_data in data:
                if self.infoMatch(temp_data["招生来源"][0], self.cb_type.currentText(), 'source') \
                        and self.infoMatch(temp_data['专业'][0], self.cb_major.currentText(), 'major'):
                    data = temp_data
                    break
        elif len(data) == 3:
            for temp_data in data:
                if self.infoMatch(temp_data['专业'][0],
                                  self.cb_major.currentText(), 'major'):
                    data = temp_data
                    break
        elif len(data) == 2:
            for temp_data in data:
                if self.infoMatch(temp_data["招生来源"][0],
                                  self.cb_type.currentText(), 'source'):
                    data = temp_data
                    break

        self.table.clearContents()
        for col in range(data.shape[1]):
            templist = np.array(data[self.tableClass[col]]).tolist()
            for row in range(data.shape[0]):
                newItem = QTableWidgetItem(str(templist[row]))
                newItem.setFont(QFont("song", 12))
                newItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
                self.table.setItem(row, col, newItem)

        self.table.resizeColumnsToContents()
        self.table.resizeRowsToContents()
def make_table(headers, items, sortable=False, row_labels=True, scale=2):
    """
    Helper function to tabulate 2d lists
    """
    cols = len(headers)
    if not isinstance(items, list):
        items = list(items)
    rows = len(items)
    rd = hex_length(rows - 1)
    table = QTableWidget(rows, cols)
    if row_labels:
        table.setVerticalHeaderLabels(
            ['0x{:0{}X}'.format(v, rd) for v in range(rows)])
    else:
        table.verticalHeader().setVisible(False)
    table.setHorizontalHeaderLabels(headers)
    for row, col, item in [(x, y, items[x][y]) for x in range(rows)
                           for y in range(cols)]:
        if isinstance(item, QPixmap):
            lab = QLabel()
            lab.setPixmap(item.scaled(item.size() * scale))
            table.setCellWidget(row, col, lab)
        elif item is not None:
            if not isinstance(item, str):
                item = str(item)
            q_item = QTableWidgetItem(item)
            if item[:2] == "0x":
                q_item.setFont(monofont)
            table.setItem(row, col, q_item)
    table_size_to_contents(table)
    if sortable:
        table.setSortingEnabled(True)
        table.sortItems(0)
    return table
示例#4
0
    def addClicked(self, fileNames):
        """Fill the playlist with fileNames' info."""
        if fileNames is None:
            return
        self.playlistTable.setSortingEnabled(False)
        songsToAdd = len(fileNames)
        for name, row in zip(fileNames, range(songsToAdd)):
            currentRow = row + self.playlist.mediaCount() - songsToAdd
            self.playlistTable.insertRow(currentRow)

            artist = self.playerCore.getArtist(name)[0]
            title = self.playerCore.getTitle(name)[0]
            album = self.playerCore.getAlbum(name)[0]
            seconds = self.playerCore.getDuration(name)
            duration = QTime(0, seconds // 60, seconds % 60)
            duration = duration.toString('mm:ss')

            rowInfo = [artist, title, album, duration]
            for info, index in zip(rowInfo, range(4)):
                cell = QTableWidgetItem(info)
                self.playlistTable.setItem(currentRow, index, cell)
                font = QFont(info, weight=QFont.Normal)
                cell.setFont(font)
                cell.setTextAlignment(Qt.AlignCenter)
        self.playlistTable.setSortingEnabled(True)

        for index in range(4):
            self.playlistTable.resizeColumnToContents(index)
示例#5
0
 def add_line_item(self, userItem: UserItem):
     # 新建项目,在这里加载key
     # 添加的时候禁用排序,否则后面会混乱
     self.ui.table.setSortingEnabled(False)
     self.itemList[userItem.id] = userItem.load_key(self.adminPassword)
     index = self.ui.table.rowCount()
     self.ui.table.setRowCount(index + 1)
     # 内容缓存
     contents = [
         userItem.id, userItem.name, userItem.account, '******',
         userItem.email_or_phone, userItem.note
     ]
     # 显示内容,以及设置中间对齐
     for i in range(0, 5 + 1):
         self.ui.table.setItem(index, i, QTableWidgetItem(contents[i]))
         self.ui.table.item(index, i).setTextAlignment(Qt.AlignHCenter
                                                       | Qt.AlignVCenter)
     font = QFont()
     font.setFamily('consolas')
     font.setPointSizeF(9.8)
     headerItem = QTableWidgetItem(str(index + 1))
     headerItem.setFont(font)
     self.ui.table.setVerticalHeaderItem(index, headerItem)
     self.ui.table.verticalHeaderItem(index).setTextAlignment(
         Qt.AlignHCenter | Qt.AlignVCenter)
     self.ui.table.setSortingEnabled(True)
示例#6
0
文件: phase10.py 项目: trawl/gamelog
 def insertRound(self, r):
     winner = r.getWinner()
     i = r.getNumRound() - 1
     self.insertRow(i)
     for j, player in enumerate(self.engine.getListPlayers()):
         item = QTableWidgetItem()
         item.setFlags(item.flags() ^ QtCore.Qt.ItemIsEditable)
         item.setTextAlignment(QtCore.Qt.AlignVCenter |
                               QtCore.Qt.AlignCenter)
         if player == winner:
             text = i18n(
                 "Phase10RoundTable", "Winner")
             font = item.font()
             font.setBold(True)
             item.setFont(font)
         else:
             text = str(r.getPlayerScore(player))
         a_phase = r.getPlayerAimedPhase(player)
         c_phase = r.getPlayerCompletedPhase(player)
         text += i18n(
             "Phase10PlayerWidget", " (Phase {})").format(a_phase)
         if c_phase != 0:
             background = 0xCCFF99  # green
         else:
             background = 0xFFCC99  # red
         item.setBackground(QtGui.QBrush(QtGui.QColor(background)))
         item.setText(text)
         self.setItem(i, j, item)
     self.scrollToBottom()
    def addToTable(self, row: int, name: str, price: int, delButton: QPushButton):
        """
            Adds the product to the productTable
        Uses:
            global parameters postfixPrice, mainFont
        Changes:
            object productTable
        :param row: row number for adding the product
        :param name: name of product
        :param price: price of product
        :param delButton: object created by addProduct
        """
        global postfixPrice, mainFont
        name = str(name)
        price = str(price) + postfixPrice

        self.productTable.setRowCount(row + 1)

        font = QFont(mainFont)
        font.setPointSize(14)

        item = QTableWidgetItem(name)
        item.setFont(font)
        self.productTable.setItem(row, 0, item)

        item = QTableWidgetItem(price)
        item.setFont(font)
        self.productTable.setItem(row, 1, item)

        self.productTable.setCellWidget(row, 2, delButton)
  def create_table(self, tblType):
      
      data = self.db.get_table_data(tblType)
          
      font = QFont('Veranda', 12, QFont.Bold)
      blk = QPalette()
      blk.setColor(blk.Foreground, Qt.black)      
 
      # Check to make sure the list is there and has data, then we go through it and add data to the table.
      if data:
          self.tblSummary.setRowCount(len(data))
          for i, row in enumerate(data):
              for j, col in enumerate(row):
                  item = QTableWidgetItem(str(col))
                  item.setFont(font)
                  #item.setForeground(QColor.fr
                  #item.setFlags(Qt.ItemIsEditable)
                  if item.text() == "None":
                      item.setText("")
                  self.tblSummary.setItem(i, j, item)      
      else:
          self.tblSummary.setRowCount(1)
          item = QTableWidgetItem()
          item.setText("Nothing Found")
          self.tblSummary.setItem(0, 0, item)
示例#9
0
 def initialize_table_nuclides(self):
     new_item1 = QTableWidgetItem()
     new_item2 = QTableWidgetItem()
     self.tableWidget.insertRow(0)
     self.tableWidget.setItem(0, 0, new_item1)
     self.tableWidget.setItem(0, 1, new_item2)
     self.major_checkBox = QCheckBox(self)
     self.major_checkBox.setText('')
     self.tableWidget.setCellWidget(0, 0, self.major_checkBox)
     self.major_checkBox.setChecked(True)
     self.major_checkBox.clicked.connect(self.on_major_check)
     self.sub_checkBoxs = {}
     for i in range(1, len(self.ordered_nuclides) + 1):
         while self.tableWidget.rowCount() <= i:
             self.tableWidget.insertRow(self.tableWidget.rowCount())
         new_item1 = QTableWidgetItem('')
         self.tableWidget.setItem(i, 0, new_item1)
         new_item1.setFont(QFont("Times", 10, QFont.Black))
         cur_nuclide_name = self.ordered_nuclides[i - 1]
         new_item1.setForeground(
             QBrush(QColor(self.color_map[cur_nuclide_name])))
         self.sub_checkBoxs[cur_nuclide_name] = QCheckBox(self)
         #if the concerntration of this nuclide exceeds 1e-10, set checked. else uncheck
         if self.nuclides_trans_data[cur_nuclide_name][0] > 1e-10:
             self.sub_checkBoxs[cur_nuclide_name].setChecked(True)
         else:
             self.sub_checkBoxs[cur_nuclide_name].setChecked(False)
         self.sub_checkBoxs[cur_nuclide_name].clicked.connect(
             self.on_sub_check)
         self.tableWidget.setCellWidget(
             i, 0, self.sub_checkBoxs[cur_nuclide_name])
         new_item2 = QTableWidgetItem(cur_nuclide_name)
         new_item2.setForeground(
             QBrush(QColor(self.color_map[cur_nuclide_name])))
         self.tableWidget.setItem(i, 1, new_item2)
示例#10
0
    def show_current_data(self):
        data_dict = DataModel.get_task_info()
        task_id_str = "task_id: " + data_dict.get('task_id') + "\n"

        position = 1
        stack_info_str = ""
        method_infos = data_dict.get('method_infos')
        for method_dict in method_infos:
            item = QTableWidgetItem()
            # 设置字体
            item.setFont(self.get_my_font())
            # 设置背景颜色
            item.setBackground(self.get_color(position / ColNum))
            # 给每一个item设置当前函数数据
            method_info_str = self.build_attr_str(method_dict, MethodAttr, ": ", "\n")
            tss_info_str = str(task_id_str + self.build_attr_str(method_dict, TssAttr, ": ", "\n"))
            item.setData(ItemDataMethodType, {
                ItemDataMethodType: method_info_str,
                ItemDataTssType: tss_info_str,
            })

            item.setText(method_dict.get('method'))
            self.show_stack.setItem(0, position, item)
            position += ColNum
            stack_info_str += method_info_str + "\n"
            self.task_info.setText(tss_info_str)
        self.stack_info.setText(stack_info_str[:-1])
        self.update_index_and_length()
示例#11
0
    def table_headers_widget(self, table_headers: list):
        """
            Генерирует таблизу заголовков программы.
        """
        heading_w = [
            "Type", "Flags", "Offset", "Virtual adress", "Physical adress",
            "Segment size in file", "Segment size in memory",
            "Segment alignment"
        ]

        self.table_headers_w = QTableWidget()
        self.table_headers_w.setColumnCount(len(heading_w))
        self.table_headers_w.setRowCount(len(table_headers))
        self.table_headers_w.setMinimumSize(300, 100)
        self.table_headers_w.setHorizontalHeaderLabels(heading_w)
        self.table_headers_w.setFont(QFont('Courier New', 10))
        self.table_headers_w.setEditTriggers(QAbstractItemView.NoEditTriggers)

        inc_i = 0
        inc_j = 0
        for header in table_headers:
            for key, value in header.items():
                item_in_cell = QTableWidgetItem(str(value))
                item_in_cell.setFont(QFont('Courier New', 10))
                item_in_cell.setTextAlignment(Qt.AlignVCenter
                                              | Qt.AlignHCenter)
                self.table_headers_w.setItem(inc_i, inc_j, item_in_cell)
                inc_j += 1
示例#12
0
    def section_table_wiget(self, section_table: list):
        """
            Метод генерирует таблицу секций программы.
        """
        heading_w = [
            "Name", "Type", "Flags", "Virtual adress", "Offset",
            "Segment size in file", "Associated section index",
            "Additional section information", "Required section alignment",
            "Size in bytes of each record"
        ]

        self.section_table_w = QTableWidget()
        self.section_table_w.setColumnCount(len(heading_w))
        self.section_table_w.setRowCount(len(section_table))
        self.section_table_w.setMinimumSize(300, 100)
        self.section_table_w.setHorizontalHeaderLabels(heading_w)
        self.section_table_w.setFont(QFont('Courier New', 10))
        self.section_table_w.setEditTriggers(QAbstractItemView.NoEditTriggers)

        inc_i = 0
        inc_j = 0
        for header in section_table:
            for key, value in header.items():
                item_in_cell = QTableWidgetItem(str(value))
                item_in_cell.setFont(QFont('Courier New', 10))
                item_in_cell.setTextAlignment(Qt.AlignVCenter
                                              | Qt.AlignHCenter)
                self.section_table_w.setItem(inc_i, inc_j, item_in_cell)
                inc_j += 1
示例#13
0
 def show_tablewidget(self, dict_data):
     '''在tableWidget显示dict_data'''
     tableWidget = self.tableWidget
     '''排序'''
     df = DataFrame(dict_data).sort_values(by='count',ascending = False)
     _temp = df.to_dict('index')
     dict_data = list(_temp.values())
     self.data = dict_data
     '''tableWidget的初始化'''
     list_col = ['key','count','ps','pron','pos','acceptation','sen']
     len_col = len(list_col)
     len_index = len(dict_data)
     tableWidget.setRowCount(len_index)#设置行数
     tableWidget.setColumnCount(len_col)#设置列数
     tableWidget.setHorizontalHeaderLabels(['单词', '词频', '音标','发音','词性','释义','例句']) # 设置垂直方向上的名字
     tableWidget.setVerticalHeaderLabels([str(i) for i in range(1, len_index + 1)]) # 设置水平方向上的名字
     '''填充数据'''
     for index in  range(len_index):
         for col in range(len_col):
             name_col = list_col[col]
             if name_col == 'pron':
                 item = QTableWidgetItem('播放')
                 item.setTextAlignment(Qt.AlignCenter)
                 font = QFont()
                 font.setBold(True)
                 font.setWeight(75)
                 item.setFont(font)
                 item.setBackground(QColor(218, 218, 218))
                 item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
                 tableWidget.setItem(index, col, item)
             else:
                 tableWidget.setItem(index,col,QTableWidgetItem(str(dict_data[index][name_col])))
     tableWidget.resizeColumnsToContents()
     tableWidget.setColumnWidth(5, 500)
示例#14
0
	def fillTableWidget(self, data, tableWidget):
		tableWidget.setRowCount(data.shape[0])
		tableWidget.setColumnCount(data.shape[1])

		tmp = ["Date de dépistage", "Poste de dépistage", "Code du patient", "Sexe du patient",
				"Tranche d'age", "Conseiller pour le test", "Effectivement dépisté", 
				"CD ayant reçu son résultat", "Résultat du test", "Positif ayant reçu son résultat",
				"Positif bénéficiant d'un CD4"]
		header = list()
		for i,v in enumerate(tmp):
			item = QTableWidgetItem(v)
			item.setTextAlignment(Qt.AlignJustify|Qt.AlignVCenter)
			font = QFont()
			font.setPointSize(10)
			font.setBold(True)
			font.setWeight(75)
			item.setFont(font)
			header.append(item)
			tableWidget.setHorizontalHeaderItem(i, item)
	
		tableWidget.horizontalHeader().setVisible(True)

		for i in range(data.shape[0]):
			for j in range(data.shape[1]):
				tableWidget.setItem(i, j,QTableWidgetItem(str(data.iloc[i, j])) )
 def updatePullTable(self, pulledVectorManager):
     vectors = pulledVectorManager.vectors
     totalRows = len(vectors)
     self.pullTableWidget.setColumnCount(len(self.colsPullTable))
     self.pullTableWidget.setVerticalScrollBarPolicy(
         QtCore.Qt.ScrollBarAlwaysOn)
     self.pullTableWidget.setRowCount(totalRows)
     header = self.pullTableWidget.horizontalHeader()
     for colNum in range(len(self.colsPullTable)):
         header.setSectionResizeMode(colNum, QtWidgets.QHeaderView.Stretch)
         headerItem = QTableWidgetItem(self.colsPullTable[colNum])
         headerItem.setFont(QtGui.QFont('SansSerif', 7))
         self.pullTableWidget.setHorizontalHeaderItem(colNum, headerItem)
     rowNum = 0
     for vectorName, vector in vectors.items():
         self.pullTableWidget.setRowHeight(rowNum, 50)
         vectorNameItem = QtWidgets.QTableWidgetItem(vectorName)
         vectorNameItem.setFont(QtGui.QFont('SansSerif', 7))
         self.pullTableWidget.setItem(
             rowNum, self.colsPullTable.index("Vector Name"),
             vectorNameItem)
         vectorDescriptionItem = QtWidgets.QTableWidgetItem(
             vector.vectorDescription)
         vectorDescriptionItem.setFont(QtGui.QFont('SansSerif', 7))
         self.pullTableWidget.setItem(
             rowNum, self.colsPullTable.index("Vector Description"),
             vectorDescriptionItem)
         graphButton = ViewGraphButton(vector)
         graphButton.setText("View Graph")
         graphButton.setFont(QtGui.QFont('SansSerif', 7))
         self.pullTableWidget.setCellWidget(
             rowNum, self.colsPullTable.index("Vector Graph"), graphButton)
         rowNum += 1
     self.pullTableWidget.setEditTriggers(
         QtWidgets.QTableWidget.NoEditTriggers)
示例#16
0
文件: list.py 项目: xz1001email/pyqt5
    def TableAddResultLine(self, line, str1, str2):

        #设置列宽
        self.table.setColumnWidth(4, 300)
        #设置行高
        self.table.setRowHeight(line, 60)
        #self.table.setFrameShape(QFrame.HLine)#设定样式
        #self.table.setShowGrid(False) #取消网格线
        #self.table.verticalHeader().setVisible(False) #隐藏垂直表头

        self.table.setItem(line, 0, self.SetItemFont("HW"))
        self.table.setItem(line, 1, self.SetItemFont(str1))
        self.table.setItem(line, 2, self.SetItemFont("FCW"))
        self.table.setItem(line, 3, self.SetItemFont(str2))

        newItem = QTableWidgetItem("等待测试 ...")
        #textFont = QFont("song", 18, QFont.Bold)
        textFont = QFont("song", 18)
        newItem.setFont(textFont)
        #newItem.setFlags(newItem.flags() | Qt.ItemIsEditable)
        #newItem.setFlags(newItem.flags() & ~Qt.ItemIsEditable)

        #newItem.setForeground(QBrush(Qt.green))
        #newItem.setBackground(QBrush(Qt.gray))
        #newItem.setTextAlignment(Qt.AlignLeft | Qt.AlignVCenter)
        newItem.setTextAlignment(Qt.AlignVCenter)
        self.table.setItem(line, 4, newItem)
    def __init__(self, Browser):
        super(InfoList, self).__init__(size=QSize(100, 100))

        self.Browser = Browser

        self.setRowCount(0)
        self.setColumnCount(2)
        self.setEditTriggers(QAbstractItemView.NoEditTriggers)
        self.setFocusPolicy(Qt.NoFocus)
        self.setSelectionMode(QAbstractItemView.NoSelection)
        self.setWordWrap(False)
        #self.setStyle(QStyleFactory.create('Fusion'))

        #header
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        headeritem1 = QTableWidgetItem()
        headeritem1.setText("Property")
        headeritem1.setFont(font)
        self.setHorizontalHeaderItem(0, headeritem1)
        headeritem2 = QTableWidgetItem()
        headeritem2.setText("Value")
        headeritem2.setFont(font)
        self.setHorizontalHeaderItem(1, headeritem2)
        self.verticalHeader().hide()
        header = self.horizontalHeader()
        style = "::section {border-top:0px solid #D8D8D8;border-left:0px solid #D8D8D8;border-right:1px solid #D8D8D8;border-bottom: 1px solid #D8D8D8;background-color:white;padding:4px;color: rgb(79,93,115)}"
        header.setStyleSheet(style)
        header.setSectionResizeMode(0, QHeaderView.ResizeToContents)
        header.setSectionResizeMode(1, QHeaderView.Stretch)
示例#18
0
文件: remigio.py 项目: trawl/gamelog
 def insertRound(self, r):
     closeType = r.getCloseType()
     winner = r.getWinner()
     background = self.bgcolors[closeType]
     i = r.getNumRound() - 1
     self.insertRow(i)
     for j, player in enumerate(self.engine.getListPlayers()):
         item = QTableWidgetItem()
         item.setFlags(item.flags() ^ QtCore.Qt.ItemIsEditable)
         item.setTextAlignment(QtCore.Qt.AlignVCenter |
                               QtCore.Qt.AlignCenter)
         item.setBackground(QtGui.QBrush(QtGui.QColor(background)))
         if player == winner:
             text = i18n(
                 "RemigioRoundTable", "Winner ({}x)").format(closeType)
             font = item.font()
             font.setBold(True)
             item.setFont(font)
         elif self.engine.wasPlayerOff(
                 player, r.getNumRound()) or r.getPlayerScore(player) < 0:
             if r.getPlayerScore(player) < 0:
                 text = ""
             else:
                 text = str(r.getPlayerScore(player))
             item.setBackground(QtGui.QBrush(QtCore.Qt.gray))
         else:
             text = str(r.getPlayerScore(player))
         item.setText(text)
         self.setItem(i, j, item)
     self.scrollToBottom()
示例#19
0
    def initUI(self):
        self.setWindowTitle("设置单元格字体和颜色")
        self.resize(430, 230)
        layout = QHBoxLayout()
        tableWidget = QTableWidget()
        tableWidget.setRowCount(4)
        tableWidget.setColumnCount(3)

        tableWidget.setHorizontalHeaderLabels(["姓名", "性别", "体重(kg)"])

        tableWidget.setRowHeight(0, 80)
        tableWidget.setColumnWidth(2, 140)

        newItem = QTableWidgetItem("雷神")
        newItem.setFont(QFont("Times", 30, QFont.Black))

        newItem.setForeground(QBrush(QColor(255, 0, 0)))
        tableWidget.setItem(0, 0, newItem)

        newItem = QTableWidgetItem("女神")
        newItem.setForeground(QBrush(QColor(255, 255, 0)))
        newItem.setBackground(QBrush(QColor(0, 0, 255)))
        tableWidget.setItem(0, 1, newItem)

        newItem = QTableWidgetItem("160")
        newItem.setFont(QFont("Times", 60, QFont.Black))
        newItem.setForeground(QBrush(QColor(0, 0, 255)))
        tableWidget.setItem(0, 2, newItem)

        layout.addWidget(tableWidget)
        self.setLayout(layout)
示例#20
0
    def update_segmentation_table(self, memory_segments):

        row = 0
        for seg in memory_segments:

            self.seg_table.insertRow(row)

            if seg.parent_process is None:
                item = QTableWidgetItem(seg.name)
                item.setTextAlignment(QtCore.Qt.AlignCenter)
                self.seg_table.setItem(row, 0, item)
            else:
                item = QTableWidgetItem(
                    f"{seg.name}\n({seg.parent_process.name})")
                f = QtGui.QFont()
                f.setFamily("Cambria")
                f.setPointSize(9)
                item.setFont(f)
                item.setTextAlignment(QtCore.Qt.AlignCenter)
                self.seg_table.setItem(row, 0, item)

            item = QTableWidgetItem(str(seg.base))
            item.setTextAlignment(QtCore.Qt.AlignCenter)
            self.seg_table.setItem(row, 1, item)

            item = QTableWidgetItem(str(seg.size))
            item.setTextAlignment(QtCore.Qt.AlignCenter)
            self.seg_table.setItem(row, 2, item)
            row += 1
示例#21
0
 def show_data_tebleWidget(self, result):
     self.tableWidget.setRowCount(len(result))
     list_data = []
     # 将数据取出 遍历加入数组
     for data in result:
         list_data.append(data)
     # 数组反序 使显示时第一条显示数据库最后一条数据
     list_data.reverse()
     # 将数据
     for i in range(len(result)):
         data = list_data[i]
         for index in range(8):
             try:
                 if index == 0:
                     if i == 0:
                         newItem = QTableWidgetItem('当前')
                         newItem.setForeground(QBrush(QColor(168, 28,
                                                             66)))  # 红色
                     else:
                         newItem = QTableWidgetItem(str(i + 1))
                 else:
                     newItem = QTableWidgetItem(str(data[index - 1]))
                 if str(data[index - 1]) == '合格':
                     newItem.setForeground(QBrush(QColor(11, 166,
                                                         120)))  # 合格绿色
                 elif str(data[index - 1]) == '不合格':
                     newItem.setForeground(QBrush(QColor(168, 28,
                                                         66)))  # 不合格红色
                 # 设置字体样式 大小
                 newItem.setFont(QFont('Microsoft YaHei', 12))
                 # 文本居中
                 newItem.setTextAlignment(Qt.AlignCenter)
                 self.tableWidget.setItem(i, index, newItem)
             except Exception as e:
                 print('错误show_data_tebleWidget' + e)
示例#22
0
    def updateTableUi(self):
        self.fileView.setRowCount(0)
        end = self.nStart+self.nPageSize if self.nStart+self.nPageSize < self.nTotal else self.nTotal
        if end ==  self.nTotal:
            self.nextBtn.setEnabled(False)
        for i in range(self.nStart, end):
            subDict = self.fileDicts['seq_'+str(i).zfill(4)]

            row = self.fileView.rowCount()

            self.fileView.setRowCount(row + 1)
            item0 = QTableWidgetItem(subDict['filename'])
            if (row+1) % 10 == 0:
                textFont = QFont("Arial", 9, QFont.Bold)
                item0.setFont(textFont)
                item0.setForeground(QColor(255,0,0))

            item1 = QTableWidgetItem(str(subDict['count']))
            #√
            item2 = QTableWidgetItem('×')
            item2.setForeground(QColor(0,0,0))
            item2.setTextAlignment(Qt.AlignCenter)
            item3 = QTableWidgetItem(str(row + 1))
            item4 = QTableWidgetItem(subDict['content'])
            item5 = QTableWidgetItem(subDict['seq'])

            self.fileView.setItem(row, 0, item0)
            self.fileView.setItem(row, 1, item1)
            self.fileView.setItem(row, 2, item2)
            self.fileView.setItem(row, 3, item3)
            self.fileView.setItem(row, 4, item4)
            self.fileView.setItem(row, 5, item5)

            item3.setCheckState(Qt.Unchecked)
 def set_table_widget(self):
     header_text_list = ['id', '开始时间', '结束时间', '总数', '通过数', '失败数']
     self.task_record_statses = get_task_record_stats()
     row_count = len(self.task_record_statses) if self.task_record_statses else 0
     column_count = len(header_text_list)
     self.event_table_widget.setColumnCount(column_count)
     self.event_table_widget.setRowCount(row_count)
     self.event_table_widget.setEditTriggers(QAbstractItemView.NoEditTriggers)
     self.event_table_widget.horizontalHeader().setStyleSheet("QHeaderView::section{background:	#ECF5FF;}")
     for column in range(0, self.event_table_widget.columnCount()):
         table_header_item = QTableWidgetItem(header_text_list[column])
         table_header_item.setFont(QFont("Roman times", 12, QFont.Bold))
         self.event_table_widget.setHorizontalHeaderItem(column, table_header_item)
     if self.task_record_statses:
         for i, task_record_stats in enumerate(self.task_record_statses):
             self.event_table_widget.setItem(i, 0, QTableWidgetItem(str(task_record_stats.id)))
             self.event_table_widget.setItem(i, 1, QTableWidgetItem(
                 task_record_stats.start_time.strftime("%Y-%m-%d %H:%M:%S")))
             self.event_table_widget.setItem(i, 2, QTableWidgetItem(
                 task_record_stats.end_time.strftime("%Y-%m-%d %H:%M:%S")))
             self.event_table_widget.setItem(i, 3, QTableWidgetItem(str(task_record_stats.total_count)))
             self.event_table_widget.setItem(i, 4, QTableWidgetItem(str(task_record_stats.pass_count)))
             self.event_table_widget.setItem(i, 5, QTableWidgetItem(str(task_record_stats.fail_count)))
     self.event_table_widget.cellClicked.connect(self.cell_clicked)
     self.event_table_widget.resizeColumnsToContents()  # Adjust the width according to the content
     self.event_table_widget.horizontalHeader().setStretchLastSection(True)
示例#24
0
    def initUI(self):
        self.setWindowTitle('代码改变单元格的大小')
        self.resize(530, 300)
        layout = QHBoxLayout()
        tableWidget = QTableWidget()
        tableWidget.setRowCount(4)
        tableWidget.setColumnCount(3)
        layout.addWidget(tableWidget)

        tableWidget.setHorizontalHeaderLabels(['姓名', '性别', '体重(kg)'])
        tableWidget.setRowHeight(0, 100) # 第0行的高度80
        tableWidget.setColumnWidth(2, 150)
        newItem = QTableWidgetItem('雷神')
        newItem.setFont(QFont('Times', 20, QFont.Black))
        newItem.setForeground(QBrush(QColor(255, 0, 0)))
        tableWidget.setItem(0, 0, newItem)

        newItem = QTableWidgetItem('女')
        newItem.setForeground(QBrush(QColor(255, 255, 0)))
        newItem.setBackground(QBrush(QColor(0, 0, 255)))
        tableWidget.setItem(0, 1, newItem)

        newItem = QTableWidgetItem('160')
        newItem.setFont(QFont('Times', 60, QFont.Black))
        newItem.setForeground(QBrush(QColor(0, 0, 255)))
        tableWidget.setItem(0, 2, newItem)

        self.setLayout(layout)
示例#25
0
	def __show_query_result_table(self, students_table):
		table = self.ui.query_result_table
		column_count = len(students_table[0]) + 1
		row_count = len(students_table) 
		table.setColumnCount(column_count)
		table.setRowCount(row_count)
		self.students_selection_buttons = []
		for i in range(row_count):
			for j in range(column_count):
				table_item = QTableWidgetItem()
				table_item.setFlags(table_item.flags() & ~Qt.ItemIsEditable)
				if i == 0 and j == 0:
					table_item.setText('Select')
					table.setItem(i, j, table_item)
				elif i != 0 and j == 0:
					#table.setItem(i, j, table_item)
					check_box = QCheckBox()
					self.students_selection_buttons.append(check_box)
					table.setCellWidget(i, j, check_box)
				else:
					if j > 3:
						table_item.setTextAlignment(3)
					font = QFont("Times", 14)
					if i == 0:
						font.setBold(True)
					table_item.setFont(font)
					table_item.setText(students_table[i][j - 1])
					table.setItem(i, j, table_item)
		header = table.horizontalHeader()
		header.setSectionResizeMode(QHeaderView.ResizeToContents)
示例#26
0
    def fill_headers(self):
        """
        Fills the headers of the table depending on the selected tags
        """

        idx_end = 0
        # Headers
        for idx in range(len(self.values_list) - 1):
            header_name = self.push_buttons[idx].text()
            item = QTableWidgetItem()
            item.setText(header_name)
            self.table.setHorizontalHeaderItem(idx, item)
            idx_end = idx

        # idx_last_tag corresponds to the index of the (n-1)th tag
        self.idx_last_tag = idx_end
        last_tag = self.push_buttons[len(self.values_list) - 1].text()
        last_tag_type = self.project.session.get_field(COLLECTION_CURRENT,
                                                       last_tag).field_type
        for header_name in self.values_list[-1]:
            idx_end += 1
            item = QTableWidgetItem()
            set_item_data(item, header_name, last_tag_type)
            self.table.setHorizontalHeaderItem(idx_end, item)

        # Adding a "Total" row and to count the scans
        self.table.insertRow(self.nb_row)
        item = QTableWidgetItem()
        item.setText('Total')

        item.setFont(self.font)

        self.table.setVerticalHeaderItem(self.nb_row, item)
示例#27
0
文件: list.py 项目: xz1001email/pyqt5
 def SetResultFail(self, line, n):
     newItem = QTableWidgetItem("测试失败")
     textFont = QFont("song", 18)
     newItem.setFont(textFont)
     newItem.setForeground(QBrush(Qt.red))
     newItem.setBackground(QBrush(Qt.gray))
     self.table.setItem(line, n, newItem)
示例#28
0
    def setRows(self):
        font = QFont()
        font.setPixelSize(14)
        for i in range(self.feedbackCount):
            if (self.query.next()):
                FeedbackIdItem = QTableWidgetItem(self.query.value(0))
                UserNameItem = QTableWidgetItem(self.query.value(1))
                FeedbackTimeItem = QTableWidgetItem(self.query.value(2))
                FeedbackStatusItem = QTableWidgetItem(self.query.value(3))
                FeedbackTextItem = QTableWidgetItem(self.query.value(4))

                FeedbackIdItem.setFont(QFont("苏新诗柳楷繁", 12))
                UserNameItem.setFont(QFont("苏新诗柳楷繁", 12))
                FeedbackTimeItem.setFont(QFont("苏新诗柳楷繁", 12))
                FeedbackStatusItem.setFont(QFont("苏新诗柳楷繁", 12))
                FeedbackTextItem.setFont(QFont("苏新诗柳楷繁", 12))

                FeedbackIdItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
                UserNameItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
                FeedbackTimeItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
                FeedbackStatusItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)

                self.tableWidget.setItem(i, 0, FeedbackIdItem)
                self.tableWidget.setItem(i, 1, UserNameItem)
                self.tableWidget.setItem(i, 2, FeedbackTimeItem)
                self.tableWidget.setItem(i, 3, FeedbackStatusItem)
                self.tableWidget.setItem(i, 4, FeedbackTextItem)
        return
    def initUI(self):
        self.setWindowTitle("设置单元格字体和颜色")
        self.resize(430, 230);
        layout = QHBoxLayout()
        tableWidget = QTableWidget()
        tableWidget.setRowCount(4)
        tableWidget.setColumnCount(3)
        layout.addWidget(tableWidget)

        tableWidget.setHorizontalHeaderLabels(['姓名', '性别', '体重(kg)'])

        newItem = QTableWidgetItem('雷神')
        newItem.setFont(QFont('Times',14,QFont.Black))
        newItem.setForeground(QBrush(QColor(255,0,0)))
        tableWidget.setItem(0,0,newItem)

        newItem = QTableWidgetItem('女')
        newItem.setForeground(QBrush(QColor(255,255,0)))
        newItem.setBackground(QBrush(QColor(0,0,255)))
        tableWidget.setItem(0,1,newItem)

        newItem = QTableWidgetItem('160')
        newItem.setFont(QFont('Times',20,QFont.Black))
        newItem.setForeground(QBrush(QColor(0,0,255)))
        tableWidget.setItem(0,2,newItem)

        self.setLayout(layout)
示例#30
0
 def set_table_widget(self):
     header_text_list = ['case_id', 'case名称', '设备id', '开始时间', '结束时间', '运行结果']
     row_count = len(self.task_records) if self.task_records else 0
     column_count = len(header_text_list)
     self.report_table_widget.setColumnCount(column_count)
     self.report_table_widget.setRowCount(row_count)
     self.report_table_widget.setEditTriggers(QAbstractItemView.NoEditTriggers)
     self.report_table_widget.horizontalHeader().setStyleSheet("QHeaderView::section{background:	#ECF5FF;}")
     for column in range(0, self.report_table_widget.columnCount()):
         table_header_item = QTableWidgetItem(header_text_list[column])
         table_header_item.setFont(QFont("Roman times", 12, QFont.Bold))
         self.report_table_widget.setHorizontalHeaderItem(column, table_header_item)
     if self.task_records:
         for i, report in enumerate(self.task_records):
             case_id = str(report.case_id) if report.case_id else ''
             case_name = report.case.name if report.case else ''
             self.report_table_widget.setItem(i, 0, QTableWidgetItem(case_id))
             self.report_table_widget.setItem(i, 1, QTableWidgetItem(case_name))
             self.report_table_widget.setItem(i, 2, QTableWidgetItem(report.device_id))
             self.report_table_widget.setItem(i, 3,
                                              QTableWidgetItem(report.start_time.strftime("%Y-%m-%d %H:%M:%S")))
             self.report_table_widget.setItem(i, 4,
                                              QTableWidgetItem(report.end_time.strftime("%Y-%m-%d %H:%M:%S")))
             status = '成功' if report.status == 0 else '失败'
             self.report_table_widget.setItem(i, 5, QTableWidgetItem(status))
     self.report_table_widget.cellClicked.connect(self.cell_clicked)
     self.report_table_widget.resizeColumnsToContents()  # Adjust the width according to the content
     self.report_table_widget.horizontalHeader().setStretchLastSection(True)
示例#31
0
    def create_table(self, tblType):

        data = self.db.get_table_data(tblType)

        font = QFont('Veranda', 12, QFont.Bold)
        blk = QPalette()
        blk.setColor(blk.Foreground, Qt.black)

        # Check to make sure the list is there and has data, then we go through it and add data to the table.
        if data:
            self.tblSummary.setRowCount(len(data))
            for i, row in enumerate(data):
                for j, col in enumerate(row):
                    item = QTableWidgetItem(str(col))
                    item.setFont(font)
                    #item.setForeground(QColor.fr
                    #item.setFlags(Qt.ItemIsEditable)
                    if item.text() == "None":
                        item.setText("")
                    self.tblSummary.setItem(i, j, item)
        else:
            self.tblSummary.setRowCount(1)
            item = QTableWidgetItem()
            item.setText("Nothing Found")
            self.tblSummary.setItem(0, 0, item)
示例#32
0
文件: list.py 项目: xz1001email/pyqt5
 def SetWarnResult(self, line, n, str1):
     newItem = QTableWidgetItem(str1)
     textFont = QFont("song", 18)
     newItem.setFont(textFont)
     newItem.setForeground(QBrush(Qt.red))
     #newItem.setBackground(QBrush(Qt.gray))
     self.table.setItem(line, n, newItem)
示例#33
0
    def genQueuesTabTable(self):
        self.queuesTabTable.setShowGrid(True)
        self.queuesTabTable.setColumnCount(3)
        self.queuesTabTable.setHorizontalHeaderLabels(['QUEUE', 'PEND', 'RUN'])

        # Hide the vertical header.
        self.queuesTabTable.verticalHeader().setVisible(False)

        queuesDic = common.getBqueuesInfo()
        self.queuesTabTable.setRowCount(len(self.queueList))

        for i in range(len(self.queueList)):
            queue = self.queueList[i]
            index = queuesDic['QUEUE_NAME'].index(queue)

            j = 0
            item = QTableWidgetItem(queue)
            self.queuesTabTable.setItem(i, j, item)

            j = j + 1
            pend = queuesDic['PEND'][index]
            item = QTableWidgetItem(pend)
            if int(pend) > 0:
                item.setFont(QFont('song', 10, QFont.Bold))
                item.setForeground(QBrush(Qt.red))
            self.queuesTabTable.setItem(i, j, item)

            j = j + 1
            run = queuesDic['RUN'][index]
            item = QTableWidgetItem(run)
            self.queuesTabTable.setItem(i, j, item)
示例#34
0
    def setRows(self):
        font = QFont()
        font.setPixelSize(14)
        for i in range(self.applyCount):
            if (self.query.next()):
                AdoptApplyIdItem = QTableWidgetItem(self.query.value(0))
                AdoptUserIdItem = QTableWidgetItem(self.query.value(1))
                AdoptPetIdItem = QTableWidgetItem(self.query.value(2))
                AdoptReasonItem = QTableWidgetItem(self.query.value(4))
                AdoptTimeItem = QTableWidgetItem(self.query.value(5))
                AdoptApplyIdItem.setFont(QFont("苏新诗柳楷繁", 12))
                AdoptUserIdItem.setFont(QFont("苏新诗柳楷繁", 12))
                AdoptPetIdItem.setFont(QFont("苏新诗柳楷繁", 12))
                AdoptReasonItem.setFont(QFont("苏新诗柳楷繁", 12))
                AdoptTimeItem.setFont(QFont("苏新诗柳楷繁", 12))

                AdoptApplyIdItem.setTextAlignment(Qt.AlignHCenter
                                                  | Qt.AlignVCenter)
                AdoptUserIdItem.setTextAlignment(Qt.AlignHCenter
                                                 | Qt.AlignVCenter)
                AdoptPetIdItem.setTextAlignment(Qt.AlignHCenter
                                                | Qt.AlignVCenter)
                AdoptReasonItem.setTextAlignment(Qt.AlignHCenter
                                                 | Qt.AlignVCenter)
                AdoptReasonItem.setTextAlignment(Qt.AlignHCenter
                                                 | Qt.AlignVCenter)
                self.tableWidget.setItem(i, 0, AdoptApplyIdItem)
                self.tableWidget.setItem(i, 1, AdoptUserIdItem)
                self.tableWidget.setItem(i, 2, AdoptPetIdItem)
                self.tableWidget.setItem(i, 3, AdoptReasonItem)
                self.tableWidget.setItem(i, 4, AdoptTimeItem)
        return
 def setData(self, data, patient_info):
     bold = QFont()
     bold.setBold(True)
     red = QColor(Qt.red)
     sys_limit = (patient_info["systolic_limit"] if "systolic_limit"
                  in patient_info else bpm_db.SYSTOLIC_LIMIT)
     dia_limit = (patient_info["diastolic_limit"] if "diastolic_limit"
                  in patient_info else bpm_db.DIASTOLIC_LIMIT)
     i = 0
     for d in data:
         it0 = QTableWidgetItem(str(d["date"].toString(DATETIME_FMT)))
         it1 = QTableWidgetItem(str(d["sys"]))
         if d["sys"] >= sys_limit: it1.setFont(bold), it1.setForeground(red)
         it2 = QTableWidgetItem(str(d["dia"]))
         if d["dia"] >= dia_limit: it2.setFont(bold), it2.setForeground(red)
         it3 = QTableWidgetItem(str(d["pulse"]))
         j = 0
         for it in [it0, it1, it2, it3]:
             it.setTextAlignment(Qt.AlignCenter)
             it.setFlags(it.flags() & ~Qt.ItemIsSelectable)
             self.setItem(i, j, it)
             j += 1
         i += 1
     self.setHorizontalHeaderLabels(
         ["  Date & Time  ", "Systolic", "Diastolic", "Pulse"])
     self.verticalHeader().setVisible(False)
     self.resizeRowsToContents()
     self.resizeColumnsToContents()
     self.verticalScrollBar().setValue(len(data))
示例#36
0
 def update_baseline_count(self):
     for index, line in enumerate(self.line_list):
         LabelCount = QTableWidgetItem(str(line["line_counter"]))
         LabelCount.setFont(QtGui.QFont('Times', 14))
         LabelCount.setForeground(
             QtGui.QBrush(QtGui.QColor(*line["line_color"])))
         LabelCount.setTextAlignment(Qt.AlignCenter)
         self.ui.baseline_table.setItem(index + 1, 3, LabelCount)
示例#37
0
 def TableItemInit(self, ColumnNum, RowNum):
     for i in range(0, RowNum):
         for j in range(0, ColumnNum):
             newItem = QTableWidgetItem('23')
             newItem.setForeground(QColor(0, 0, 0))  #设置字体颜色
             newItem.setFont(QFont("宋体"))
             newItem.setTextAlignment(Qt.AlignCenter | Qt.AlignVCenter)
             self.ui.tableWidget.setItem(i, j, newItem)
示例#38
0
 def fill_UI(self):
     """fills table with data
     """
     self.get_data()
     
     rows = len(self.data) + 1
     self.setRowCount(rows)
     
     self.check_dic = {}
     all_checked = True
     for (i, row) in enumerate(self.data):
         cell_widget = QWidget()
         mini_layout = QHBoxLayout(cell_widget)
         cell_widget.setLayout(mini_layout)
         self.check_dic[i] = QCheckBox(self)
         self.check_dic[i].clicked.connect(self.count_chosen)
         self.check_dic[i].clicked.connect(self.unselect_select_all)
         mini_layout.addWidget(self.check_dic[i])
         mini_layout.setAlignment(Qt.AlignCenter)
         self.setCellWidget(i, 0, cell_widget)
         for (k, item) in enumerate(row):
             self.setItem(i, k + 1, QTableWidgetItem(str(item)))
         if self.allele_status_column:
             status = row[self.allele_status_column]
             color = general.color_dic[general.allele_status_dic[status.lower()]]
             status_item = QTableWidgetItem(status)
             status_item.setBackground(QColor(color))
             if self.instant_accept_status:
                 if status == self.instant_accept_status:
                     self.check_dic[i].setChecked(True)
                     status_item.setFont(general.font_bold)
                 else:
                     all_checked = False
         self.setItem(i, self.allele_status_column + 1, status_item)
     
     # add select-all row:
     cell_widget = QWidget()
     mini_layout = QHBoxLayout(cell_widget)
     cell_widget.setLayout(mini_layout)
     self.check_all = QCheckBox(self)
     mini_layout.addWidget(self.check_all)
     if all_checked:
         self.check_all.setChecked(True)
     mini_layout.setAlignment(Qt.AlignCenter)
     self.check_all.clicked.connect(self.toggle_select_all)
     self.setCellWidget(rows-1, 0, cell_widget)
     self.setItem(rows-1, 1, QTableWidgetItem(""))
     self.setItem(rows-1, 2, QTableWidgetItem("Select All"))
     self.setItem(rows-1, 3, QTableWidgetItem(""))       
     self.setItem(rows-1, 4, QTableWidgetItem(""))
     
     self.resizeColumnsToContents()
     self.count_chosen()
示例#39
0
 def makeTable(self):
     self.table = QTableWidget(3,4)
     for column in range(len(header)):
         table_item = QTableWidgetItem(header[column])
         header_font = QFont()
         header_font.setBold(True)
         table_item.setFont(header_font)
         self.table.setHorizontalHeaderItem(column, table_item)
         self.table.setColumnWidth(column, header_size[column])
     self.layout.addWidget(self.table, QtCore.Qt.AlignTop)
     self.setCentralWidget(self.table)
     pass
示例#40
0
    def set_conflict_tags_table_widget(self):
        self.conflict_tag_table_widget.setColumnCount(5)
        self.conflict_tag_table_widget.setRowCount(len(self.conflict_tags_message_dict.keys()))
        # set table header
        self.conflict_tag_table_widget.setHorizontalHeaderItem(0, QTableWidgetItem('标识Id'))
        self.conflict_tag_table_widget.setHorizontalHeaderItem(1, QTableWidgetItem('标识名称'))
        self.conflict_tag_table_widget.setHorizontalHeaderItem(2, QTableWidgetItem('标识描述'))
        self.conflict_tag_table_widget.setHorizontalHeaderItem(3, QTableWidgetItem('现有标识名称'))
        self.conflict_tag_table_widget.setHorizontalHeaderItem(4, QTableWidgetItem('现有标识描述'))
        self.conflict_tag_table_widget.horizontalHeader().setStyleSheet("QHeaderView::section{background:	#ECF5FF;}")
        self.conflict_tag_table_widget.horizontalHeader().setStretchLastSection(True)
        # set table data
        row = 0
        for key in self.conflict_tags_message_dict:
            conflict_tag = self.conflict_tags_message_dict[key]
            self.conflict_tag_table_widget.setItem(row, 0, QTableWidgetItem(str(conflict_tag['id'])))
            # tag_name
            tag_name_item = QTableWidgetItem(conflict_tag['name'])
            tag_name_item.setForeground(Qt.red)
            tag_name_item.setFont(QFont("Times", 10, QFont.Black))
            self.conflict_tag_table_widget.setItem(row, 1, tag_name_item)

            # tag_description
            if type(conflict_tag['description']) is float and math.isnan(conflict_tag['description']):
                description = ''
            else:
                description = conflict_tag['description']
            self.conflict_tag_table_widget.setItem(row, 2, QTableWidgetItem(description))

            src_name_widget_item = QTableWidgetItem(conflict_tag['src_name'])
            src_name_widget_item.setFlags(Qt.NoItemFlags)
            self.conflict_tag_table_widget.setItem(row, 3, src_name_widget_item)
            if type(conflict_tag['src_description']) is float and math.isnan(conflict_tag['src_description']):
                src_description = ''
            else:
                src_description = conflict_tag['src_description']
            src_description_widget_item = QTableWidgetItem(src_description)
            src_description_widget_item.setFlags(Qt.NoItemFlags)
            self.conflict_tag_table_widget.setItem(row, 4, src_description_widget_item)
            row += 1
        self.conflict_tag_table_widget.setColumnHidden(0, True)
        self.conflict_tag_table_widget.setColumnHidden(3, True)
        self.conflict_tag_table_widget.setColumnHidden(4, True)
示例#41
0
    def createTable(self, data):
        tblNextQue = QTableWidget()
        
        h_font = QFont('Seqoe UI', 10, QFont.Bold)
        i_font = QFont('Seqoe UI', 10, QFont.Bold)
        
        tblNextQue.setColumnCount(7)
        tblNextQue.setAlternatingRowColors(True)
        head = tblNextQue.horizontalHeader()
        head.setStretchLastSection(True)
        head.setFont(h_font)
        lstHeader = ["Queue Letter", "Description", "Orders", "Queue Date", "Oldest Order Date", "Queue Pulled Date", "Kornit ID"]     
        tblNextQue.setHorizontalHeaderLabels(lstHeader)
        #tblNextQue.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
        tblNextQue.setWordWrap(False)

        # Check to make sure the list is there and has data, then we go through it and add data to the table.
        if data:
            tblNextQue.setRowCount(len(data))
            for i, row in enumerate(data):
                for j, col in enumerate(row):
                    item = QTableWidgetItem(str(col))
                    item.setFont(i_font)
                    #item.setFlags(Qt.ItemIsEditable)
                    if item.text() == "None":
                        item.setText("")
                    tblNextQue.setItem(i, j, item)      
        else:
            tblNextQue.setRowCount(1)
            item = QTableWidgetItem()
            item.setText("Nothing Found")
            tblNextQue.setItem(0, 0, item)
            
        tblNextQue.resizeColumnsToContents()
        tblNextQue.setWindowIcon(QIcon('icon/scanner.png'))
         
        return tblNextQue    
示例#42
0
    def insertRound(self, entry):
        kind = entry.getKind()
        kinds = self.engine.getEntryKinds()
        background = self.bgcolors[kinds.index(kind)]
        kind = i18n("CarcassonneInputWidget", kind)
        i = entry.getNumRound() - 1
        self.insertRow(i)
        for j, player in enumerate(self.engine.getListPlayers()):
            item = QTableWidgetItem()
            item.setFlags(item.flags() ^ QtCore.Qt.ItemIsEditable)
            item.setTextAlignment(QtCore.Qt.AlignVCenter |
                                  QtCore.Qt.AlignCenter)
            item.setBackground(QtGui.QBrush(QtGui.QColor(background)))

            if player == entry.getPlayer():
                text = "{} ({})".format(entry.getPlayerScore(), kind)
                font = item.font()
                font.setBold(True)
                item.setFont(font)
            else:
                text = ""
            item.setText(text)
            self.setItem(i, j, item)
        self.scrollToBottom()