Python源码示例:PyQt5.QtCore.Qt.NoItemFlags()
示例1
def flags(self, index):
"""Return the item flags for index.
Override QAbstractItemModel::flags.
Return: The item flags, or Qt.NoItemFlags on error.
"""
if not index.isValid():
return Qt.NoItemFlags
if index.parent().isValid():
# item
return (Qt.ItemIsEnabled | Qt.ItemIsSelectable |
Qt.ItemNeverHasChildren)
else:
# category
return Qt.NoItemFlags
示例2
def flags(self, index: QModelIndex):
if not index.isValid():
return None
j = index.column()
device = self.get_device_at(index.row())
if j == 0 and not device.has_native_backend and not device.has_gnuradio_backend:
return Qt.NoItemFlags
if j in [1, 2, 3] and not device.is_enabled:
return Qt.NoItemFlags
if j == 2 and not device.has_native_backend:
return Qt.NoItemFlags
if j == 3 and not device.has_gnuradio_backend:
return Qt.NoItemFlags
flags = Qt.ItemIsEnabled
if j in [0, 2, 3]:
flags |= Qt.ItemIsUserCheckable
return flags
示例3
def set_server_mgr(self, server_mgr):
self.server_mgr = server_mgr
self.nodesets = []
self.model.clear()
self.model.setHorizontalHeaderLabels(['Node Sets'])
item = QStandardItem("Opc.Ua.NodeSet2.xml")
item.setFlags(Qt.NoItemFlags)
self.model.appendRow([item])
self.view.expandAll()
示例4
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例5
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEnabled | Qt.ItemIsUserCheckable
示例6
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEnabled
示例7
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例8
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例9
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
try:
_ = self.checksum_label.data_ranges[index.row()]
except IndexError:
return Qt.NoItemFlags
return Qt.ItemIsEditable | Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例10
def flags(self, index):
if not index.isValid():
return Qt.NoItemFlags
try:
_ = self.message_type[index.row()]
except IndexError:
return Qt.NoItemFlags
return Qt.ItemIsEditable | Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例11
def flags(self, index: QModelIndex):
if not index.isValid():
return Qt.NoItemFlags
return Qt.ItemIsEditable | Qt.ItemIsEnabled | Qt.ItemIsSelectable
示例12
def conteudoTabela(self, tabela, row, col, data):
item = QtWidgets.QTableWidgetItem()
item.setTextAlignment(Qt.AlignJustify |
Qt.AlignHCenter | Qt.AlignVCenter)
item.setFlags(Qt.NoItemFlags)
item.setText(data)
tabela.setItem(row, col, item)
# Conteudo tabela alinhado a esquerda
示例13
def conteudoTabelaLeft(self, tabela, row, col, data):
item = QtWidgets.QTableWidgetItem()
item.setTextAlignment(Qt.AlignJustify |
Qt.AlignLeft | Qt.AlignVCenter)
item.setFlags(Qt.NoItemFlags)
item.setText(data)
tabela.setItem(row, col, item)
# Botão Tabela
示例14
def botaoTabela(self, tabela, row, col, funcao, bg):
item = QtWidgets.QPushButton()
# item.setFixedWidth(30)
# item.setFixedHeight(30)
item.setCursor(QtGui.QCursor(Qt.PointingHandCursor))
item.setFocusPolicy(Qt.NoFocus)
item.setFlat(Qt.NoItemFlags)
item.setStyleSheet("QPushButton{\n"
"background-color: #1E87F0;\n"
"border-radius: 2px;\n"
"padding: 2px;\n"
"color: #FFF;\n"
"font: 10px \"Tahoma\" Bold\n"
"}\n"
"QPushButton:hover{\n"
"background-color: #40a286\n"
"}")
item.setText("EDITAR")
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(
self.resourcepath('Images/editar.png')),
QtGui.QIcon.Normal, QtGui.QIcon.Off)
item.setIcon(icon1)
tabela.setCellWidget(row, col, item)
item.clicked.connect(funcao)
# Botão Remove Item
示例15
def botaoRemoveItem(self, tabela, row, col, funcao, bg):
item = QtWidgets.QPushButton()
# item.setFixedWidth(30)
# item.setFixedHeight(30)
item.setCursor(QtGui.QCursor(Qt.PointingHandCursor))
item.setFocusPolicy(Qt.NoFocus)
item.setFlat(Qt.NoItemFlags)
item.setStyleSheet("QPushButton{\n"
"background-color: " + bg + ";\n"
"border-radius: 2px;\n"
"padding: 2px;\n"
"}\n"
"QPushButton:hover{\n"
"background-color: #40a286\n"
"}")
item.setText("")
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(
self.resourcepath('Images/edit-delete.png')),
QtGui.QIcon.Normal, QtGui.QIcon.Off)
item.setIcon(icon1)
tabela.setCellWidget(row, col, item)
item.clicked.connect(funcao)
# data e Status entrega tabela compra / venda
示例16
def botaoReceberParcela(self, tabela, row, col, funcao, texto, status):
item = QtWidgets.QPushButton()
# item.setFixedWidth(70)
# item.setFixedHeight(30)
item.setCursor(QtGui.QCursor(Qt.PointingHandCursor))
if status == 1:
item.setDisabled(True)
item.setFocusPolicy(Qt.NoFocus)
item.setFlat(Qt.NoItemFlags)
item.setStyleSheet("QPushButton{\n"
"background-color: #7AB32E;\n"
"border-radius: 2px;\n"
"padding: 2px;\n"
"border: none;\n"
"text-transform: uppercase;\n"
"font: 10px \"Arial\";\n"
"}\n"
"QPushButton:hover{\n"
"background-color: #40a286\n"
"}"
)
item.setText(texto)
font = QtGui.QFont()
font.setFamily("Tahoma")
font.setPointSize(10)
item.setFont(font)
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(
self.resourcepath('Images/money.png')),
QtGui.QIcon.Normal, QtGui.QIcon.Off)
item.setIcon(icon1)
tabela.setCellWidget(row, col, item)
item.clicked.connect(funcao)
# Input receber/pagar parcela compra e venda
示例17
def _process_row(self, y, row):
cols = self.columnCount()
for x, i in enumerate(range(0, len(row), self._width)):
block = row[i:i+self._width]
item = QTableWidgetItem(codecs.encode(block, 'hex').decode())
if block in bytes(string.printable, 'ascii'):
item.setFont(self.bold_font)
item.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
item.setData(Qt.UserRole, block) # store original data
if self._read_only:
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
else:
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsEditable)
self.setItem(y, x, item)
# process remaining, unfilled cells
for j in range(x+1, cols):
item = QTableWidgetItem()
item.setFlags(Qt.NoItemFlags)
item.setTextAlignment(Qt.AlignHCenter)
self.setItem(y, j, item)
text = self._bytes_to_ascii(row)
item = QTableWidgetItem(text)
item.setFlags(Qt.NoItemFlags)
text_widget = QPlainTextEdit()
# Prevent vertical scrollbars in ASCII view
def _fix_widget_size():
if text_widget.verticalScrollBar():
text_widget.setMinimumWidth(text_widget.width() + 25)
text_widget.textChanged.connect(_fix_widget_size)
text_widget.setReadOnly(True)
text_widget.setFrameStyle(QFrame.NoFrame)
text_widget.setPlainText(text)
text_widget.setFont(self.ascii_font)
text_widget.setLineWrapMode(QPlainTextEdit.NoWrap)
text_widget.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
self.setColumnWidth(cols - 1, 250)
if self._read_only:
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
else:
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsEditable)
item.setFlags(Qt.NoItemFlags)
self.setCellWidget(y, cols - 1, text_widget)
示例18
def display_utxos(self):
required_confs = 16 if self.main_tab.caller.isTestnetRPC else 101
rewards = self.main_tab.caller.parent.db.getRewardsList()
self.rewardsArray = []
for mn in [x for x in self.main_tab.caller.masternode_list if x['isHardware']]:
x = {}
x['name'] = mn['name']
x['addr'] = mn['collateral'].get('address')
x['path'] = "%d'/0/%d" % (mn['hwAcc'], mn['collateral'].get('spath'))
x['utxos'] = [r for r in rewards
if r['mn_name'] == x['name'] # this mn's UTXOs
and r['txid'] != mn['collateral'].get('txid') # except the collateral
and not (r['coinstake'] and r['confirmations'] < required_confs)] # and immature rewards
x['total_rewards'] = round(sum([reward['satoshis'] for reward in x['utxos']])/1e8, 8)
self.rewardsArray.append(x)
# update fee per Kb
if self.main_tab.caller.rpcConnected:
self.feePerKb = self.main_tab.caller.rpcClient.getFeePerKb()
if self.feePerKb is None:
self.feePerKb = MINIMUM_FEE
else:
self.feePerKb = MINIMUM_FEE
def item(value):
item = QTableWidgetItem(value)
item.setTextAlignment(Qt.AlignCenter)
item.setFlags(Qt.NoItemFlags)
return item
if len(self.rewardsArray) == 0:
self.ui.lblMessage.setText("Unable to get raw TX from RPC server\nPlease wait for full synchronization and try again.")
else:
self.ui.tableW.setRowCount(len(self.rewardsArray))
numOfInputs = 0
for row, mnode in enumerate(self.rewardsArray):
self.ui.tableW.setItem(row, 0, item(mnode['name']))
self.ui.tableW.setItem(row, 1, item(mnode['addr']))
newInputs = len(mnode['utxos'])
numOfInputs += newInputs
rewards_line = "%s PIV" % mnode['total_rewards']
self.ui.tableW.setItem(row, 2, item(rewards_line))
self.ui.tableW.setItem(row, 3, item(str(newInputs)))
self.ui.tableW.resizeColumnsToContents()
self.ui.lblMessage.setVisible(False)
self.ui.tableW.horizontalHeader().setSectionResizeMode(1, QHeaderView.Stretch)
total = sum([float(mnode['total_rewards']) for mnode in self.rewardsArray])
self.ui.totalLine.setText("<b>%s PIV</b>" % str(round(total,8)))
self.ui.noOfUtxosLine.setText("<b>%s</b>" % str(numOfInputs))
# update fee
estimatedTxSize = (44+numOfInputs*148)*1.0 / 1000 # kB
self.suggestedFee = round(self.feePerKb * estimatedTxSize, 8)
self.updateFee()