QString strNodeName = “只对中文符合你作用”;
//QString strNodeName = “only yuo only yuo only yuoonly yuo only yuo only yuo ”;
const QString elidedIdNew = fm.elidedText(strNodeName,
Qt::ElideMiddle,
100);
发觉对英文一点也不起作用,起初以为宽度有问题,打印出宽度后发觉也正常,最后发觉,取像的
pixelSize()为0
qreal nPix = painter->font().pixelSize();
qDebug("nPix %d", nPix);
解决方法调用前先设置自己要的字体大小:
QFont font = painter->font();
//TODO: change font size
font.setPixelSize(9);
painter->setFont(font);
问题解决