鱼C论坛

 找回密码
 立即注册
楼主: 凊风

字体颜色设置求教~

[复制链接]
 楼主| 发表于 2024-3-26 06:59:39 | 显示全部楼层
FishC 发表于 2024-3-26 06:59
非常抱歉,我之前的回复使用了不适合Python的ANSI转义码。在Python中,可以使用`colorama`库来实现控制 ...

回复请注意python格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 06:59:47 | 显示全部楼层
凊风 发表于 2024-03-26 06:59
回复请注意python格式


非常抱歉,我之前的回复中的代码格式不符合Python的语法规范。以下是修正后的代码,遵循了Python的格式要求:
from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text, color):
    cursor = self.plainTextEdit.textCursor()
    format = QTextCharFormat()
    
    # 设置颜色
    if color == "red":
        format.setForeground(Qt.red)
    elif color == "blue":
        format.setForeground(Qt.blue)
    elif color == "green":
        format.setForeground(Qt.green)
    # 其他颜色设置...
    
    # 插入文本
    cursor.insertText(text, format)

self.print_with_color('您本次报表为:', "red")

请使用以上修正后的代码,它将正确设置文字的颜色,并插入到指定位置。如果有任何问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:01:36 | 显示全部楼层
FishC 发表于 2024-3-26 06:59
非常抱歉,我之前的回复中的代码格式不符合Python的语法规范。以下是修正后的代码,遵循了Python的格式 ...

那如果需要打印成下面这样又要怎么定义函数呢?

print('复制工作簿《', Base_Workbook, '》并重命名为《123.xls》')

其中Base_Workbook是变量。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:01:48 | 显示全部楼层
凊风 发表于 2024-03-26 07:01
那如果需要打印成下面这样又要怎么定义函数呢?

pr ...


您可以定义一个新的函数来实现打印指定内容并设置文字颜色的功能。下面是一个示例代码:from PySide6.QtGui import QTextCharFormat, QColorfrom PySide6.QtCore import Qtdef print_with_color(self, text, color):    cursor = self.plainTextEdit.textCursor()    format = QTextCharFormat()        # 设置颜色    if color == "red":        format.setForeground(Qt.red)    elif color == "blue":        format.setForeground(Qt.blue)    elif color == "green":        format.setForeground(Qt.green)    # 其他颜色设置...        # 插入文本    cursor.insertText(text, format)def print_with_variable(self, variable):    text = f"复制工作簿《{variable}》并重命名为《123.xls》"    self.print_with_color(text, "red")在这个例子中,我们定义了一个新的函数`print_with_variable`,它接收一个参数`variable`,代表要插入的变量值。该函数使用f-string来构建要打印的字符串,并将其传递给之前定义的`print_with_color`函数来设置颜色为红色并插入到文本框中。您可以调用`print_with_variable`函数来实现打印指定内容并设置文字颜色的需求,例如:self.print_with_variable(Base_Workbook)请注意替换`Base_Workbook`为您自己的变量名。希望能对您有帮助!如有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:02:09 | 显示全部楼层
FishC 发表于 2024-3-26 07:01
您可以定义一个新的函数来实现打印指定内容并设置文字颜色的功能。下面是一个示例代码:from PySide6.Q ...

回复请注意Python格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:02:19 | 显示全部楼层
凊风 发表于 2024-03-26 07:02
回复请注意Python格式


非常抱歉,下面是格式正确的Python代码:from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text, color):
    cursor = self.plainTextEdit.textCursor()
    format = QTextCharFormat()

    # 设置颜色
    if color == "red":
        format.setForeground(Qt.red)
    elif color == "blue":
        format.setForeground(Qt.blue)
    elif color == "green":
        format.setForeground(Qt.green)
    # 其他颜色设置...

    # 插入文本
    cursor.insertText(text, format)

def print_with_variable(self, variable):
    text = f"复制工作簿《{variable}》并重命名为《123.xls》"
    self.print_with_color(text, "red")

# 调用函数
self.print_with_variable(Base_Workbook)

请注意将代码中的`self.print_with_variable(Base_Workbook)`放入适当的位置,并将`Base_Workbook`替换为您自己的变量名。希望这次提供的回答更符合您的需求!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:04:39 | 显示全部楼层
FishC 发表于 2024-3-26 07:02
非常抱歉,下面是格式正确的Python代码:from PySide6.QtGui import QTextCharFormat, QColor
from Py ...

能不能定义成def print_with_color(self, text1, variable,text2, color1,color2,color3):这样的句式呢?

其中 variable是变量。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:04:53 | 显示全部楼层
凊风 发表于 2024-03-26 07:04
能不能定义成def print_with_color(self, text1, vari ...


当然可以!您可以将函数定义为`def print_with_color(self, text1, variable, text2, color1, color2, color3):`,并根据需要使用这些参数来设置文本和颜色。下面是相应的代码示例:
from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text1, variable, text2, color1, color2, color3):
    cursor = self.plainTextEdit.textCursor()
    format = QTextCharFormat()
    
    # 设置颜色
    if color1 == "red":
        format.setForeground(Qt.red)
    elif color1 == "blue":
        format.setForeground(Qt.blue)
    elif color1 == "green":
        format.setForeground(Qt.green)
    # 其他颜色设置...
    
    # 插入文本
    cursor.insertText(text1, format)
    
    # 设置变量的颜色
    format.setForeground(QColor(color2))
    cursor.insertText(variable, format)
    
    # 设置文本2的颜色
    format.setForeground(QColor(color3))
    cursor.insertText(text2, format)

# 调用函数
self.print_with_color("您本次报表为:", self.File_Path, "。", "red", "blue", "green")

在这个例子中,函数接受6个参数:`text1`、`variable`、`text2`、`color1`、`color2`和`color3`。您可以指定需要的文本内容和颜色,并通过调用`self.print_with_color()`函数进行打印。

希望这次回答满足了您的需求!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:09:43 | 显示全部楼层
FishC 发表于 2024-3-26 07:04
当然可以!您可以将函数定义为`def print_with_color(self, text1, variable, text2, color1, color2,  ...

可能我没有表达清楚。

def print_with_color(self, text1, variable, text2, color1, color2, color3)中,

我的意思是text1颜色对应color1(比如说yellow),

variable颜色对应color2(比如说blue),

text2颜色对应color3(比如说(yellow)。

意思就是打印出来的一句话中设置3种颜色。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:09:55 | 显示全部楼层
凊风 发表于 2024-03-26 07:09
可能我没有表达清楚。

def print_with_color(self, ...


非常抱歉之前的理解错误。您的意思是要根据参数分别设置不同部分的颜色。下面是相应的代码示例:from PySide6.QtGui import QTextCharFormat, QColorfrom PySide6.QtCore import Qtdef print_with_color(self, text1, variable, text2, color1, color2, color3):    cursor = self.plainTextEdit.textCursor()        # 设置文本1的颜色    format1 = QTextCharFormat()    format1.setForeground(QColor(color1))    cursor.insertText(text1, format1)        # 设置变量的颜色    format2 = QTextCharFormat()    format2.setForeground(QColor(color2))    cursor.insertText(variable, format2)        # 设置文本2的颜色    format3 = QTextCharFormat()    format3.setForeground(QColor(color3))    cursor.insertText(text2, format3)# 调用函数self.print_with_color("您本次报表为:", self.File_Path, "。", "yellow", "blue", "yellow")在这个例子中,首先创建了三个`QTextCharFormat`对象,分别对应文本1、变量和文本2的格式。然后,使用`setForeground()`方法将相应的颜色设置给每个格式对象。最后,在插入文本的时候,分别使用不同的格式对象来设置文本的颜色。希望这次回答能满足您的需求!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:10:19 | 显示全部楼层
FishC 发表于 2024-3-26 07:09
非常抱歉之前的理解错误。您的意思是要根据参数分别设置不同部分的颜色。下面是相应的代码示例:from P ...

回复请注意Python格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:10:28 | 显示全部楼层
凊风 发表于 2024-03-26 07:10
回复请注意Python格式


非常抱歉。下面是根据您的需求修改后的Python代码示例:
from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text1, variable, text2, color1, color2, color3):
    cursor = self.plainTextEdit.textCursor()

    # 设置文本1的颜色
    format1 = QTextCharFormat()
    format1.setForeground(QColor(color1))
    cursor.insertText(text1, format1)

    # 设置变量的颜色
    format2 = QTextCharFormat()
    format2.setForeground(QColor(color2))
    cursor.insertText(variable, format2)

    # 设置文本2的颜色
    format3 = QTextCharFormat()
    format3.setForeground(QColor(color3))
    cursor.insertText(text2, format3)

# 调用函数
self.print_with_color("您本次报表为:", self.File_Path, "。", "yellow", "blue", "yellow")

非常抱歉之前的格式混乱,希望这次能满足您的要求。如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:19:39 | 显示全部楼层
FishC 发表于 2024-3-26 07:10
非常抱歉。下面是根据您的需求修改后的Python代码示例:

您这次理解对了。函数也对了。

不过,如果要打印print(Text1, variable1, text2, variable2)

其中 variable1和 variable2是变量。

那def print_with_color(self, text1, variable1, text2,  variable2,color1, color2, color3,color4):这样的句式又要如何实现呢?

回复请注意python格式

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:19:51 | 显示全部楼层
凊风 发表于 2024-03-26 07:19
您这次理解对了。函数也对了。

不过,如果要打印pr ...


非常抱歉之前的回答有误。下面是根据您的要求修改后的Python代码示例:
from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text1, variable1, text2, variable2, color1, color2, color3, color4):
    cursor = self.plainTextEdit.textCursor()
    
    # 设置文本1的颜色
    format1 = QTextCharFormat()
    format1.setForeground(QColor(color1))
    cursor.insertText(text1, format1)
    
    # 设置变量1的颜色
    format2 = QTextCharFormat()
    format2.setForeground(QColor(color2))
    cursor.insertText(str(variable1), format2)
    
    # 设置文本2的颜色
    format3 = QTextCharFormat()
    format3.setForeground(QColor(color3))
    cursor.insertText(text2, format3)
    
    # 设置变量2的颜色
    format4 = QTextCharFormat()
    format4.setForeground(QColor(color4))
    cursor.insertText(str(variable2), format4)

# 调用函数
self.print_with_color("您本次报表为:", self.File_Path, ",您的分数为:", self.score, "red", "blue", "green", "yellow")

请注意,我们在函数的参数中添加了两个变量参数`variable1`和`variable2`,并且在插入文本时使用`str()`将其转换为字符串以便显示。

感谢您的指正和耐心,如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 07:27:52 | 显示全部楼层
FishC 发表于 2024-3-26 07:19
非常抱歉之前的回答有误。下面是根据您的要求修改后的Python代码示例:

谢谢~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 07:28:00 | 显示全部楼层


不客气,很高兴能够帮助到您!如果您还有其他问题,请随时提问。祝您编程学习顺利,玩得愉快!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 09:08:35 | 显示全部楼层
FishC 发表于 2024-3-26 07:19
非常抱歉之前的回答有误。下面是根据您的要求修改后的Python代码示例:

如果要打印print(Text1, variable1, text2, variable2,Text3)

其中 variable1和 variable2是变量。

那def print_with_color(self, text1, variable1, text2,  variable2,Text3, color1, color2, color3,color4, color5):这样的句式又要如何实现呢?

回复请注意Python格式。

回复请注意python格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 09:08:43 | 显示全部楼层
凊风 发表于 2024-03-26 09:08
如果要打印print(Text1, variable1, text2, variable ...


非常抱歉之前的回答有误。下面是根据您的要求修改后的Python代码示例:
from PySide6.QtGui import QTextCharFormat, QColor
from PySide6.QtCore import Qt

def print_with_color(self, text1, variable1, text2, variable2, text3, color1, color2, color3, color4, color5):
    cursor = self.plainTextEdit.textCursor()
    
    # 设置文本1的颜色
    format1 = QTextCharFormat()
    format1.setForeground(QColor(color1))
    cursor.insertText(text1, format1)
    
    # 设置变量1的颜色
    format2 = QTextCharFormat()
    format2.setForeground(QColor(color2))
    cursor.insertText(str(variable1), format2)
    
    # 设置文本2的颜色
    format3 = QTextCharFormat()
    format3.setForeground(QColor(color3))
    cursor.insertText(text2, format3)
    
    # 设置变量2的颜色
    format4 = QTextCharFormat()
    format4.setForeground(QColor(color4))
    cursor.insertText(str(variable2), format4)
    
    # 设置文本3的颜色
    format5 = QTextCharFormat()
    format5.setForeground(QColor(color5))
    cursor.insertText(text3, format5)

调用函数示例:
self.print_with_color("Text1:", variable1, "Text2:", variable2, "Text3", "red", "blue", "green", "yellow", "orange")

在这个例子中,我们根据您的要求,添加了额外的`text3`和`color5`参数,并对其进行了相应的处理。您可以根据实际情况传递文本和颜色参数来调用函数。

非常抱歉之前的回答有误,感谢您的指正和耐心。如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-26 10:14:11 | 显示全部楼层
FishC 发表于 2024-3-26 09:08
非常抱歉之前的回答有误。下面是根据您的要求修改后的Python代码示例:

如果要打印print(Text1, variable1, text2, variable2,Text3,variable3,Text4)

其中 variable1、 variable2和variable3是变量。

那def print_with_color(self, text1, variable1, text2,  variable2,Text3, variable3,Text4,color1, color2, color3,color4, color5,color6, color7):这样的句式又要如何实现呢?

回复请注意Python格式。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-26 10:14:23 | 显示全部楼层
凊风 发表于 2024-03-26 10:14
如果要打印print(Text1, variable1, text2, variable ...


下面是根据您的要求修改后的Python代码示例:from PySide6.QtGui import QTextCharFormat, QColorfrom PySide6.QtCore import Qtdef print_with_color(self, text1, variable1, text2, variable2, text3, variable3, text4, color1, color2, color3, color4, color5, color6, color7):    cursor = self.plainTextEdit.textCursor()        # 设置文本1的颜色    format1 = QTextCharFormat()    format1.setForeground(QColor(color1))    cursor.insertText(text1, format1)        # 设置变量1的颜色    format2 = QTextCharFormat()    format2.setForeground(QColor(color2))    cursor.insertText(str(variable1), format2)        # 设置文本2的颜色    format3 = QTextCharFormat()    format3.setForeground(QColor(color3))    cursor.insertText(text2, format3)        # 设置变量2的颜色    format4 = QTextCharFormat()    format4.setForeground(QColor(color4))    cursor.insertText(str(variable2), format4)        # 设置文本3的颜色    format5 = QTextCharFormat()    format5.setForeground(QColor(color5))    cursor.insertText(text3, format5)        # 设置变量3的颜色    format6 = QTextCharFormat()    format6.setForeground(QColor(color6))    cursor.insertText(str(variable3), format6)        # 设置文本4的颜色    format7 = QTextCharFormat()    format7.setForeground(QColor(color7))    cursor.insertText(text4, format7)调用函数示例:self.print_with_color("Text1:", variable1, "Text2:", variable2, "Text3", variable3, "Text4:", "red", "blue", "green", "yellow", "orange", "purple", "pink")在这个例子中,我们根据您的要求,添加了额外的`variable3`和`text4`参数,并对其进行了相应的处理。您可以根据实际情况传递文本和颜色参数来调用函数。感谢您的耐心和理解,如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 12:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表