I'm porting a very simple application from Qt3.1 to Qt4. I read a line from a socket and then pop up a message window to display the text. The problem is that lines are automatically wrapped even if I surround the text with <nobr> tags. Here's a code fragment:
QString buffer
=...
// get the string text from our data source
buffer=buffer.simplified(); // chop and compress whitespace
// try to expand horizontally and not vertically
qmb.setTextFormat(Qt::RichText);
// try to open our window on top
Qt::WindowFlags wflags=qmb.windowFlags();
qmb.setWindowFlags(wflags|Qt::WindowStaysOnTopHint);
qmb.exec();
QString buffer=... // get the string text from our data source
buffer=buffer.simplified(); // chop and compress whitespace
QMessageBox qmb("QtAlert", "<html><font size=\"7\"><nobr>"+buffer+"</nobr></font></html>", QMessageBox::Information, QMessageBox::Ok|QMessageBox::Default, 0, 0);
// try to expand horizontally and not vertically
qmb.setSizePolicy(QSizePolicy(QSizePolicy::Ignored, QSizePolicy::Minimum));
qmb.setTextFormat(Qt::RichText);
// try to open our window on top
Qt::WindowFlags wflags=qmb.windowFlags();
qmb.setWindowFlags(wflags|Qt::WindowStaysOnTopHint);
qmb.exec();
To copy to clipboard, switch view to plain text mode
Anything over about 12 characters gets wrapped in the middle of a word despite the <nobr> tag. For example, the string 'incontrovertibly' displays as:
incontrovert
ibly
I want the message box to expand horizontally to fit a line until it encounters an explicit <br />. What am I doing wrong?
Bookmarks