关于QString和和tr的问题

核动力蜗牛Killua 2009-04-15 05:36:55

QChar ch=first;
while(ch<=last)
{
ui->primaryComboBox->addItem(tr(QString(ch))); //报错
ui->secondaryComboBox->addItem(tr(QString(ch))); //报错
ui->tertiaryComboBox->addItem(tr(QString(ch))); //报错
ch=ch.unicode()+1;
}


错误信息:
D:/Projects/Sort/sortdailog.cpp:40: error: no matching function for call to `sortdailog::tr(QString)'
D:/Projects/Sort/sortdailog.cpp:41: error: no matching function for call to `sortdailog::tr(QString)'

请问是哪里出了问题??



======================================================================================================
完整代码:


#include "sortdailog.h"
#include<QtGui>
#include<QString>

sortdailog::sortdailog(QWidget *parent)
: QDialog(parent)
{
ui->setupUi(this);

ui->secondaryGroupBox->hide(); //设置为隐藏
ui->tertiaryGroupBox->hide(); //设置为隐藏

this->layout()->setSizeConstraint(QLayout::SetFixedSize); //将此层设置为适合大小

setColumnRange('A','Z'); //设置默认范围

}

sortdailog::~sortdailog()
{
delete ui;
}

void sortdailog::setColumnRange(QChar first,QChar last)
{
//清除原有数据
ui->primaryComboBox->clear();
ui->secondaryComboBox->clear();
ui->tertiaryComboBox->clear();

ui->secondaryComboBox->addItem(tr("None"));
ui->tertiaryComboBox->addItem(tr("None"));

ui->primaryComboBox->setMinimumSize(ui->secondaryComboBox->sizeHint()); //设置理想大小

QChar ch=first;
while(ch<=last)
{
ui->primaryComboBox->addItem(tr(QString(ch))); //QString(ch)因为tr()只能接受字符串类型
ui->secondaryComboBox->addItem(tr(QString(ch)));
ui->tertiaryComboBox->addItem(tr(QString(ch)));
ch=ch.unicode()+1;
}
}

...全文
776 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
后来发下问题了...搞定了..谢谢各位大大
  • 打赏
  • 举报
回复
ui->primaryComboBox->addItem(tr(QString(ch))); //QString(ch)因为tr()只能接受字符串类型
ui->secondaryComboBox->addItem(tr(QString(ch)));
ui->tertiaryComboBox->addItem(tr(QString(ch)));

晕,addItem可以接收QString啊,加个tr是什么意思?
HelloDan 2009-04-15
  • 打赏
  • 举报
回复

QChar ch=first;
while(ch<=last)
{
ui->primaryComboBox->addItem(QString(ch));
ui->secondaryComboBox->addItem(QString(ch));
ui->tertiaryComboBox->addItem(QString(ch));
ch=ch.unicode()+1;
}

影子LEON 2009-04-15
  • 打赏
  • 举报
回复
返回sourceText的翻译版本,或者如果没有合适的版本返回sourceText它自己。翻译上下文是comment的QObject(默认为空)。
这是这个函数的解释
试试把 QChar转换成char 再用tr来转换
影子LEON 2009-04-15
  • 打赏
  • 举报
回复
QString QObject::tr ( const char * sourceText, const char * comment ) const

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧