Question
I have an action which create QMessageBox. In that dialog I want to print a list, which contains several items. I have the following code:
void MainWindow::onAboutActivated(){
qDebug() << "about";
QMessageBox::about(this,
"Autor: \n"
"\n"
"Umoznuje:"
"<ul>"
"<li> Item 1 </li>"
"<li> Item 2 </li>"
"<li> Item 3 </li>"
"</ul>");
However this does not print the list, but text with html tags. How can I print the list? Any ideas?
Solution
Don't mix newlines \n
with html-tags. Change the newlines to <br>
and then the text format is automatically recognized.
OTHER TIPS
It seems you are setting the dialog title instead of dialog contents. This works for me:
void MainWindow::onAboutActivated(){
qDebug() << "about";
QMessageBox::about(this, "Dialog Title",
"Autor: \n"
"\n"
"Umoznuje:"
"<ul>"
"<li> Item 1 </li>"
"<li> Item 2 </li>"
"<li> Item 3 </li>"
"</ul>");
The default text format for QMessageBox is Qt::AutoText which should detect html tags inside your string, so you should be able to continue using the about
static method without the need to instantiate a QMessageBox object.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow