最近使用Qt遇到的一些小问题解决办法总结

时间:2024-12-22 13:03:56

1. 我想获取当前星期几这样的,我没在API里面找到这样的函数,但是我找到了今天是第几天这样的,所以自己转换一下就OK了:

 typedef struct
{
int numInWeek;
QString dayInWeek;
}DayInWeek; DayInWeek currentDayInWeek[] = {
{ , "Monday" },
{ , "Tuesday" },
{ , "Wednesday" },
{ , "Thursday" },
{ , "Friday" },
{ , "Saturday" },
{ , "Sunday" }
}; QString GetCurrentDate()
{
QDate current_date = QDate::currentDate();
QString date_text = current_date.toString("yyyy-M-d");
int cureent_day_num = current_date.dayOfWeek();
for (int i = ; i < sizeof(currentDayInWeek) / sizeof(DayInWeek); i++)
{
if (cureent_day_num == currentDayInWeek[i].numInWeek)
{
date_text += ", " + currentDayInWeek[i].dayInWeek;
break;
}
}
return date_text;
}

上面这样的写法也是可以避免一些hard code。基于自己曾经被hard code坑过,改起来代码来那酸爽,只有自己知道了。改一个字符串名字要改无数个地方。

2. 就是在代码中要加入中文后面用于显示的时候,出现无法识别或者乱码,再网上找了一下有2种方法可以解决这个问题,自己用了下面这种:

 QStringList nameList;
nameList << QStringLiteral("张三") << QStringLiteral("李四") << QStringLiteral("王五");

还有另外一种好像是要在代码的地方要注明使用了什么字符格式之类的吧,没有使用也就不记得了,大家可以查一下看看~

转载注明本blog地址就好了~