Python源码示例:PyQt5.QtCore.Qt.red()
示例1
def test_highlighted(qtbot):
"""Make sure highlighting works.
Note that with Qt 5.11.3 and > 5.12.1 we need to call setPlainText *after*
creating the highlighter for highlighting to work. Ideally, we'd test
whether CompletionItemDelegate._get_textdoc() works properly, but testing
that is kind of hard, so we just test it in isolation here.
"""
doc = QTextDocument()
completiondelegate._Highlighter(doc, 'Hello', Qt.red)
doc.setPlainText('Hello World')
# Needed so the highlighting actually works.
edit = QTextEdit()
qtbot.addWidget(edit)
edit.setDocument(doc)
colors = [f.foreground().color() for f in doc.allFormats()]
assert QColor('red') in colors
示例2
def __init__(self):
QtWidgets.QWidget.__init__(self)
uic.loadUi("window.ui", self)
self.scene = Scene(0, 0, 561, 581)
self.scene.win = self
self.view.setScene(self.scene)
self.image = QImage(561, 581, QImage.Format_ARGB32_Premultiplied)
self.image.fill(Qt.white)
self.bars.clicked.connect(lambda : set_bars(self))
self.erase.clicked.connect(lambda: clean_all(self))
self.paint.clicked.connect(lambda: clipping(self))
self.rect.clicked.connect(lambda: set_rect(self))
self.ect.clicked.connect(lambda: add_bars(self))
self.lines = []
self.clip = None
self.point_now = None
self.input_bars = False
self.input_rect = False
self.pen = QPen(red)
示例3
def add_bars(win):
if len(win.edges) == 0:
QMessageBox.warning(win, "Внимание!", "Не введен отсекатель!")
return
win.pen.setColor(red)
w.lines.append([[win.edges[0].x() - 15, win.edges[0].y() - 15],
[win.edges[1].x() - 15, win.edges[1].y() - 15]])
add_row(w.table_bars)
i = w.table_bars.rowCount() - 1
item_b = QTableWidgetItem("[{0}, {1}]".format(win.edges[0].x() - 15 , win.edges[0].y() - 15))
item_e = QTableWidgetItem("[{0}, {1}]".format(win.edges[1].x() - 15, win.edges[1].y() - 15))
w.table_bars.setItem(i, 0, item_b)
w.table_bars.setItem(i, 1, item_e)
w.scene.addLine(win.edges[0].x() - 15, win.edges[0].y() - 15, win.edges[1].x() - 15, win.edges[1].y() - 15, w.pen)
win.pen.setColor(red)
w.lines.append([[win.edges[0].x() + 15, win.edges[0].y() + 15],
[win.edges[1].x() + 15, win.edges[1].y() + 15]])
add_row(w.table_bars)
i = w.table_bars.rowCount() - 1
item_b = QTableWidgetItem("[{0}, {1}]".format(win.edges[0].x() + 15, win.edges[0].y() + 15))
item_e = QTableWidgetItem("[{0}, {1}]".format(win.edges[1].x() + 15, win.edges[1].y() + 15))
w.table_bars.setItem(i, 0, item_b)
w.table_bars.setItem(i, 1, item_e)
w.scene.addLine(win.edges[0].x() + 15, win.edges[0].y() + 15, win.edges[1].x() + 15, win.edges[1].y() + 15, w.pen)
示例4
def _updateAutoForegroundColForeground(self, row):
item = self.item(row, self._autoForegroundCol)
if item is None: return
try:
value = float(item.data(self._role))
except Exception as ex:
value = 0 # if referenced item doesn't have value or not number, think it as default 0.
if value > 0:
color = Qt.red
elif value < 0:
color = Qt.darkGreen
else:
if item.background() == Qt.white: # for qdarkstyle
color = Qt.black
else:
color = QColor('#C0C0C0')
item.setForeground(color)
示例5
def getForegroundOverride(self, value):
"""
可由子类重载,这样可以根据不同的值设置不同的前景色
"""
try:
value = float(value)
if value > 0:
color = Qt.red
elif value < 0:
color = Qt.darkGreen
else:
color = None # default
except Exception as ex:
color = None
return color
示例6
def data(self, index, role):
if not index.isValid():
return None
item = index.internalPointer()
if role == Qt.ForegroundRole:
if item.itemData[1] == 'removed':
return QVariant(QColor(Qt.red))
elif item.itemData[1] == 'added':
return QVariant(QColor(Qt.green))
elif item.itemData[1] == 'modified' or item.itemData[1].startswith('['):
return QVariant(QColor(Qt.darkYellow))
if role == Qt.DisplayRole:
return item.data(index.column())
else:
return None
示例7
def _drawRect(self, qimg):
painter = QPainter()
painter.begin(qimg)
pen = QPen()
pen_width = 3
pen.setWidth(pen_width)
pen.setColor(Qt.red)
painter.setPen(pen)
dw = qimg.width() - pen_width
dh = qimg.height() - pen_width
painter.drawRect(
1,
1,
dw,
dh)
painter.end()
return qimg
示例8
def emit(self, record):
try:
item = QListWidgetItem(self.format(record))
if record.levelno > logging.INFO:
item.setIcon(QIcon.fromTheme("dialog-warning"))
item.setForeground(QBrush(Qt.red))
else:
item.setIcon(QIcon.fromTheme("dialog-information"))
self.app.exec_in_main(self._add_item, item)
except (KeyboardInterrupt, SystemExit):
raise
except:
self.handleError(record)
示例9
def paintEvent(self, event):
super(Label, self).paintEvent(event)
# 中正间画十字
painter = QPainter(self)
painter.setPen(Qt.red)
x = int(self.width() / 2)
y = int(self.height() / 2)
painter.drawLine(x, 0, x, self.height())
painter.drawLine(0, y, self.width(), y)
if self.ismd:
# 画坐标点
pos = QCursor.pos()
ret = win32gui.GetPixel(win32gui.GetWindowDC(
win32gui.GetDesktopWindow()), pos.x(), pos.y())
r, g, b = ret & 0xff, (ret >> 8) & 0xff, (ret >> 16) & 0xff
print(r, g, b)
painter.setPen(Qt.white)
painter.drawText(self.rect(), Qt.AlignLeft |
Qt.AlignBottom, '({}, {})\nRGB: ({}, {}, {})\n{}'.format(
pos.x(), pos.y(), r, g, b, QColor(r, g, b).name()))
示例10
def _updateAutoForegroundColForeground(self, row):
item = self.item(row, self._autoForegroundCol)
if item is None: return
try:
value = float(item.data(self._role))
except Exception as ex:
value = 0 # if referenced item doesn't have value or not number, think it as default 0.
if value > 0:
color = Qt.red
elif value < 0:
color = Qt.darkGreen
else:
if item.background() == Qt.white: # for qdarkstyle
color = Qt.black
else:
color = QColor('#C0C0C0')
item.setForeground(color)
示例11
def getForegroundOverride(self, value):
"""
可由子类重载,这样可以根据不同的值设置不同的前景色
"""
try:
value = float(value)
if value > 0:
color = Qt.red
elif value < 0:
color = Qt.darkGreen
else:
color = None # default
except Exception as ex:
color = None
return color
示例12
def test_highlight(pat, txt, segments):
doc = QTextDocument(txt)
highlighter = completiondelegate._Highlighter(doc, pat, Qt.red)
highlighter.setFormat = mock.Mock()
highlighter.highlightBlock(txt)
highlighter.setFormat.assert_has_calls([
mock.call(s[0], s[1], mock.ANY) for s in segments
])
示例13
def clipping(win):
buf = win.scene.itemAt(now, QTransform()).rect()
win.clip = [buf.left(), buf.right(), buf.top(), buf.bottom()]
for b in win.lines:
pass
win.pen.setColor(blue)
cohen_sutherland(b, win.clip, win)
win.pen.setColor(red)
示例14
def add_point(point):
global w
if w.input_rect:
w.pen.setColor(black)
if w.point_now_rect is None:
w.point_now_rect = point
w.point_lock = point
add_row(w.table_rect)
i = w.table_rect.rowCount() - 1
item_x = QTableWidgetItem("{0}".format(point.x()))
item_y = QTableWidgetItem("{0}".format(point.y()))
w.table_rect.setItem(i, 0, item_x)
w.table_rect.setItem(i, 1, item_y)
else:
w.edges.append(point)
w.point_now_rect = point
add_row(w.table_rect)
i = w.table_rect.rowCount() - 1
item_x = QTableWidgetItem("{0}".format(point.x()))
item_y = QTableWidgetItem("{0}".format(point.y()))
w.table_rect.setItem(i, 0, item_x)
w.table_rect.setItem(i, 1, item_y)
item_x = w.table_rect.item(i-1, 0)
item_y = w.table_rect.item(i-1, 1)
w.scene.addLine(point.x(), point.y(), float(item_x.text()), float(item_y.text()), w.pen)
if w.input_bars:
w.pen.setColor(red)
if w.point_now_bars is None:
w.point_now_bars = point
else:
w.lines.append([[w.point_now_bars.x(), w.point_now_bars.y()],
[point.x(), point.y()]])
add_row(w.table_bars)
i = w.table_bars.rowCount() - 1
item_b = QTableWidgetItem("[{0}, {1}]".format(w.point_now_bars.x(), w.point_now_bars.y()))
item_e = QTableWidgetItem("[{0}, {1}]".format(point.x(), point.y()))
w.table_bars.setItem(i, 0, item_b)
w.table_bars.setItem(i, 1, item_e)
w.scene.addLine(w.point_now_bars.x(), w.point_now_bars.y(), point.x(), point.y(), w.pen)
w.point_now_bars = None
示例15
def clipping(win):
if len(win.clip) <= 1:
QMessageBox.warning(win, "Ошибка!", "Отсекатель не задан!")
if len(win.pol) <= 1:
QMessageBox.warning(win, "Ошибка!", "Многоугольник не задан!")
if len(win.pol) > 1 and len(win.clip) > 1:
norm = isConvex(win.clip)
if not norm:
QMessageBox.warning(win, "Ошибка!", "Отсекатель не выпуклый!Операция не может быть проведена!")
else:
p = sutherland_hodgman(win.clip, win.pol, norm)
if p:
win.pen.setWidth(2)
win.pen.setColor(red)
win.scene.addPolygon(p, win.pen)
win.pen.setWidth(1)
示例16
def display_title(self):
if len(self.utxos):
if self.read_only:
msg = f'<span>Found 1000 Dash transaction(s):</span>'
else:
msg = f'<span><b>Select the appropriate UTXO then press the <Apply> button or ' \
f'double click on the corresponding row.</b></span>'
self.lblMessage.setText(msg)
self.lblMessage.setVisible(True)
else:
self.lblMessage.setText('<span style="color:red"><b>Found no unspent 1000 Dash transactions in your '
'wallet</b></span>')
self.lblMessage.setVisible(True)
示例17
def setHeaderForeground(self, color):
"""
只能设置整个header
http://stackoverflow.com/questions/36196988/color-individual-horizontal-headers-of-qtablewidget-in-pyqt
@color: string, like 'red'
"""
self.horizontalHeader().setStyleSheet('color:' + color)
示例18
def init_ui(self):
scene = QGraphicsScene()
scene.setBackgroundBrush(QColor(100, 100, 100))
scene.setItemIndexMethod(QGraphicsScene.BspTreeIndex)
scene.setSceneRect(scene.itemsBoundingRect())
self.setDragMode(QGraphicsView.RubberBandDrag)
self.setViewportUpdateMode(QGraphicsView.FullViewportUpdate)
self.setRenderHints(QPainter.Antialiasing | QPainter.TextAntialiasing)
self.frame_item = QGraphicsPixmapItem()
self.text_item_offset = 0
self.rect_item_array = []
self.text_item_array = []
for i in range(0, 5):
rect_item = QGraphicsRectItem()
rect_item.setVisible(False)
rect_item.setZValue(20.0)
rect_item.setPen(QPen(Qt.red, 5))
rect_item.setRect(20, 20, 20, 20)
scene.addItem(rect_item)
self.rect_item_array.append(rect_item)
text_item = QGraphicsSimpleTextItem("")
text_item.setBrush(QBrush(Qt.red))
text_item.setZValue(20.0)
text_item.setPos(10, 50)
text_item.setFont(QFont("黑体", 24))
text_item.setVisible(False)
scene.addItem(text_item)
self.text_item_array.append(text_item)
scene.addItem(self.frame_item)
self.curr_factor = 1.0
self.setScene(scene)
示例19
def setBlackoutColors(self):
global colors
global orange
colors = [Qt.red, Qt.yellow, Qt.darkYellow, Qt.green, Qt.darkGreen, orange, Qt.blue,Qt.cyan, Qt.darkCyan, Qt.magenta, Qt.darkMagenta, Qt.gray]
# return
# self.setStyleSheet("background-color: black")
#self.Plot24.setBackgroundBrush(Qt.black)
mainTitleBrush = QBrush(Qt.red)
self.chart24.setTitleBrush(mainTitleBrush)
self.chart5.setTitleBrush(mainTitleBrush)
self.chart24.setBackgroundBrush(QBrush(Qt.black))
self.chart24.axisX().setLabelsColor(Qt.white)
self.chart24.axisY().setLabelsColor(Qt.white)
titleBrush = QBrush(Qt.white)
self.chart24.axisX().setTitleBrush(titleBrush)
self.chart24.axisY().setTitleBrush(titleBrush)
#self.Plot5.setBackgroundBrush(Qt.black)
self.chart5.setBackgroundBrush(QBrush(Qt.black))
self.chart5.axisX().setLabelsColor(Qt.white)
self.chart5.axisY().setLabelsColor(Qt.white)
self.chart5.axisX().setTitleBrush(titleBrush)
self.chart5.axisY().setTitleBrush(titleBrush)
#$ self.networkTable.setStyleSheet("QTableCornerButton::section{background-color: white;}")
# self.networkTable.cornerWidget().setStylesheet("background-color: black")
self.networkTable.setStyleSheet("QTableView {background-color: black;gridline-color: white;color: white} QTableCornerButton::section{background-color: white;}")
headerStyle = "QHeaderView::section{background-color: white;border: 1px solid black;color: black;} QHeaderView::down-arrow,QHeaderView::up-arrow {background: none;}"
self.networkTable.horizontalHeader().setStyleSheet(headerStyle)
self.networkTable.verticalHeader().setStyleSheet(headerStyle)
示例20
def updateData(self, radius):
if self.redline is not None:
self.redline.pop(0).remove()
self.redline = self.axes.plot(np.linspace(0, 2*np.pi, 100), np.ones(100)*radius, color='r', linestyle='-')
if self.filledcircle:
self.filledcircle.remove()
self.bullseye.remove()
circle = plt.Circle((0.0, 0.0), radius, transform=self.axes.transData._b, color="red", alpha=0.4)
self.filledcircle = self.axes.add_artist(circle)
# Create bullseye
circle = plt.Circle((0.0, 0.0), 20, transform=self.axes.transData._b, color=self.fontColor, alpha=0.4)
self.bullseye = self.axes.add_artist(circle)
示例21
def paintEvent(self, event):
QDialog.paintEvent(self, event)
if not self.line.isNull():
painter = QPainter(self)
pen = QPen(Qt.red, 3)
painter.setPen(pen)
painter.drawLine(self.line)
示例22
def colorFromPoint(self, x, y):
if not self._imageRainbow:
return QColor(Qt.red)
return self._imageRainbow.pixelColor(x, y)
示例23
def __init__(self, *args, color=Qt.red, **kwargs):
super(CColorControl, self).__init__(*args, **kwargs)
self._alpha = 255
self._color = QColor(color)
self.colorChanged.emit(self._color)
示例24
def reset(self):
self.updateColor(Qt.red)
示例25
def __init__(self, *args, color=Qt.red, **kwargs):
super(CColorPanel, self).__init__(*args, **kwargs)
self._color = QColor(color)
self._image = None
self._imagePointer = None # 小圆环
self._pointerPos = None # 小圆环位置
self._createPointer()
示例26
def _increment_generation(self):
self.current_generation += 1
self.ga_window.current_generation_label.setText(str(self.current_generation + 1))
# self.ga_window.current_generation_label.setText("<font color='red'>" + str(self.loaded[self.current_generation]) + "</font>")
示例27
def __init__(self, editor: Editor):
self.editor = editor
self.guideLineColor = QColor(Qt.red)
self.guideLineColor.setAlpha(0.25)
self.editor.updateRequest.connect(self.editor.viewport().update)
self.editor.painted.connect(self.drawLines)
示例28
def __init__(self):
super().__init__()
self.m_step = 0
self.m_x = 5
self.m_y = 1
# 初始化图像
self.series = QSplineSeries(self)
green_pen = QPen(Qt.red)
green_pen.setWidth(3)
self.series.setPen(green_pen)
self.axisX = QValueAxis()
self.axisY = QValueAxis()
self.series.append(self.m_x, self.m_y)
self.addSeries(self.series)
self.addAxis(self.axisX, Qt.AlignBottom)
self.addAxis(self.axisY, Qt.AlignLeft)
self.series.attachAxis(self.axisX)
self.series.attachAxis(self.axisY)
self.axisX.setTickCount(5)
self.axisX.setRange(0, 10)
self.axisY.setRange(-5, 10)
self.timer = QTimer(self)
self.timer.setInterval(1000)
self.timer.timeout.connect(self.handleTimeout)
self.timer.start()
示例29
def __init__(self, *args, antialiasing=True, **kwargs):
super(Label, self).__init__(*args, **kwargs)
self.Antialiasing = antialiasing
self.setMaximumSize(200, 200)
self.setMinimumSize(200, 200)
self.radius = 100
#####################核心实现#########################
self.target = QPixmap(self.size()) # 大小和控件一样
self.target.fill(Qt.transparent) # 填充背景为透明
p = QPixmap("Data/Images/head.jpg").scaled( # 加载图片并缩放和控件一样大
200, 200, Qt.KeepAspectRatioByExpanding, Qt.SmoothTransformation)
painter = QPainter(self.target)
if self.Antialiasing:
# 抗锯齿
painter.setRenderHint(QPainter.Antialiasing, True)
painter.setRenderHint(QPainter.HighQualityAntialiasing, True)
painter.setRenderHint(QPainter.SmoothPixmapTransform, True)
# painter.setPen(# 测试圆圈
# QPen(Qt.red, 5, Qt.SolidLine, Qt.RoundCap, Qt.RoundJoin))
path = QPainterPath()
path.addRoundedRect(
0, 0, self.width(), self.height(), self.radius, self.radius)
# **** 切割为圆形 ****#
painter.setClipPath(path)
# painter.drawPath(path) # 测试圆圈
painter.drawPixmap(0, 0, p)
self.setPixmap(self.target)
#####################核心实现#########################
示例30
def __init__(self, *args, **kwargs):
super(Window, self).__init__(*args, **kwargs)
layout = QHBoxLayout(self)
# 绿色边框
labelGreen = QLabel(self, pixmap=QPixmap('Data/1.jpg').scaled(100, 100))
layout.addWidget(labelGreen)
aniGreen = AnimationShadowEffect(Qt.darkGreen, labelGreen)
labelGreen.setGraphicsEffect(aniGreen)
aniGreen.start()
# 红色边框,圆形图片
labelRed = QLabel(self)
labelRed.setMinimumSize(100, 100)
labelRed.setMaximumSize(100, 100)
labelRed.setStyleSheet('border-image: url(Data/1.jpg);border-radius: 50px;')
layout.addWidget(labelRed)
aniRed = AnimationShadowEffect(Qt.red, labelGreen)
labelRed.setGraphicsEffect(aniRed)
aniRed.start()
# 蓝色边框按钮
button = QPushButton('按钮', self)
aniButton = AnimationShadowEffect(Qt.blue, button)
layout.addWidget(button)
button.setGraphicsEffect(aniButton)
button.clicked.connect(aniButton.stop) # 按下按钮停止动画
aniButton.start()
# 青色边框输入框
lineedit = QLineEdit(self)
aniEdit = AnimationShadowEffect(Qt.cyan, lineedit)
layout.addWidget(lineedit)
lineedit.setGraphicsEffect(aniEdit)
aniEdit.start()