鱼C论坛

 找回密码
 立即注册
查看: 907|回复: 7

求助~~

[复制链接]
发表于 2024-2-16 13:21:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Label1.setText('123')
TypeError: descriptor 'setText' for 'PySide6.QtWidgets.QLabel' objects doesn't apply to a 'str' object

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

使用道具 举报

发表于 2024-2-16 13:21:09 | 显示全部楼层
这个错误提示是由于setText()方法需要传入一个QString对象,而不是一个普通的字符串(str)对象。您可以通过将字符串转换为QString来解决这个问题。下面是一个简单的示例代码:
from PySide6.QtWidgets import QApplication, QMainWindow, QLabel
from PySide6.QtCore import QString

app = QApplication([])

window = QMainWindow()
label = QLabel(window)
label.setText(QString('123'))  # 将字符串转换为QString对象
label.show()

app.exec()

请注意,在最新版本的PySide中,您需要将普通字符串转换为Python字节串(bytes),然后再将其转换为QString对象。例如:
label.setText(QString(b'123'))

希望这能帮到您!如果您有任何其他问题,请随时问我。

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

使用道具 举报

 楼主| 发表于 2024-2-16 13:47:37 | 显示全部楼层
FishC 发表于 2024-2-16 13:21
这个错误提示是由于setText()方法需要传入一个QString对象,而不是一个普通的字符串(str)对象。您可以通 ...

from PySide6.QtCore import QString
ImportError: cannot import name 'QString' from 'PySide6.QtCore' (D:\Python\pythonProject\.venv\Lib\site-packages\PySide6\QtCore.pyd)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-16 13:47:45 | 显示全部楼层
清風 发表于 2024-02-16 13:47
from PySide6.QtCore import QString
ImportError: c ...


非常抱歉,我之前的回答有误。在PySide6中,不再使用QString,而是直接使用Python的字符串对象(str)。您可以直接将普通字符串传递给setText()方法。下面是一个修正后的示例代码:
from PySide6.QtWidgets import QApplication, QMainWindow, QLabel

app = QApplication()
window = QMainWindow()
label = QLabel(window)
label.setText('123')
label.show()
app.exec()

请尝试运行这段代码,看看是否能够成功设置标签文本。

如果您还有其他问题,请随时提问。我会尽力帮助您。

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

使用道具 举报

 楼主| 发表于 2024-2-16 13:50:58 | 显示全部楼层
FishC 发表于 2024-2-16 13:47
非常抱歉,我之前的回答有误。在PySide6中,不再使用QString,而是直接使用Python的字符串对象(str) ...

哈哈  这不又回到1楼的问题了吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-16 13:51:10 | 显示全部楼层
清風 发表于 2024-02-16 13:50
哈哈  这不又回到1楼的问题了吗?


非常抱歉,我再次犯了错误。setText()方法确实接受普通的字符串参数,所以您不需要使用QString或进行任何类型转换。我深感抱歉给您带来困惑。下面是一个正确的示例代码:from PySide6.QtWidgets import QApplication, QMainWindow, QLabelapp = QApplication()window = QMainWindow()label = QLabel(window)label.setText('123')label.show()app.exec_()请尝试运行这段代码,应该可以成功设置标签的文本为'123'。如果您还有其他问题,请随时提问。我会努力提供准确的帮助。

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

使用道具 举报

 楼主| 发表于 2024-2-16 13:52:39 | 显示全部楼层
FishC 发表于 2024-2-16 13:51
非常抱歉,我再次犯了错误。setText()方法确实接受普通的字符串参数,所以您不需要使用QString或进行任 ...

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

使用道具 举报

发表于 2024-2-16 13:52:46 | 显示全部楼层
清風 发表于 2024-02-16 13:52
回复请注意python格式


非常抱歉,我在之前的回复中未使用正确的Python语法格式。下面是以正确的Python语法格式给出的示例代码:
from PySide6.QtWidgets import QApplication, QMainWindow, QLabel

app = QApplication()
window = QMainWindow()
label = QLabel(window)
label.setText('123')
label.show()
app.exec_()

请注意确保使用 Python 的正确语法格式,这样代码才能成功运行。如果您还有其他问题,请随时提问。我将尽力给予准确的帮助。

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 15:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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