0
<br>
が発生する場所にQMessageBoxのテキストの改行を制限する方法はありますか?私。他の場所でも自動改行はありませんか?何かあなたが本当にしたい場合msgBox.setAutoLinebreaks(False)
が...QMessageBoxは自動改行を避ける
<br>
が発生する場所にQMessageBoxのテキストの改行を制限する方法はありますか?私。他の場所でも自動改行はありませんか?何かあなたが本当にしたい場合msgBox.setAutoLinebreaks(False)
が...QMessageBoxは自動改行を避ける
いいだろうと同じように、あなたがそれを行うには、この汚いハックを使用することがあります。
QMessageBox msgBox;
QString loremIpsum = "Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.";
loremIpsum.replace(" ", " ");
msgBox.setText(loremIpsum);
msgBox.setTextFormat(Qt::RichText);
msgBox.exec();
しかし、メッセージボックスのサイズは、まだいくつかの内部ロジックによって制限され、それで、もしそれが合わないならば、残りの行は表示されません。私のシステムでは、これは "ab ill"で切り捨てられています。自動改行アルゴリズムはスペースだけでなく(それについてはわからないので)、改行なしのハイフンなどを使用する必要があるかもしれないことに注意してください。私はこれを一般的な解決策として使うつもりはありませんが、特定の場合に使用することができます。
メッセージボックスは、テキストがボックスの最後に達したときに改行する必要があります。改行しないと、ボックスの外側にオーバーフローします。 "
"は、 "
"と表示され、 "
"ではなく、 "\ n"と表示されるはずです。 – Jite
'textFormat'はデフォルトで定型文に設定されていますが、'
'は改行として解釈されますが(' \ n'と混同しないでください!)それは正常に動作しますが、 'QMessageBox'の幅は調整可能であるべきですか、これはとにかく固定されていますか? –