如何在PyQt5标签中输入多个参数



我想在PyQt5中的range_label文本标签中输入多个参数(一些文本以及变量l_dateu_date(。我的代码是:

self.range_label.setText('Date range of data: ', l_date, '-', u_date)

但是,这会返回错误:

TypeError: setText(self, str): too many arguments

如何在文本标签中输入多个参数?或者我应该使用另一个PyQt5对象?

QLabel只接受一个字符串,因此您必须连接该字符串,为此,Qt提供了许多方法,但最简单的是f-string:

text = f"Date range of data: {l_date} - {u_date}"
self.range_label.setText(text)

As QLabel只接受单个字符串作为参数。因此,我们可以将所有字符串连接在一起,或者使用f-string,或者直接传递参数。

方式1:

from datetime import date
today =  date.today()
l_date =  today.strftime("%d/%m/%Y")
u_date = today.strftime("%B %d, %Y")
#Main code
txt = "Date range of data: "+str(l_date)+" - "+str(u_date)
self.range_label.setText(txt)

方式2:

txt = f"Date range of data: {l_date} - {u_date}"
self.range_label.setText(txt)

方式3:

self.range_label.setText("Date range of data: "+str(l_date)+" - "+str(u_date))

相关内容

  • 没有找到相关文章

最新更新