标签: qmessagebox

如何在所有窗口之上显示QMessageBox

我创建了一个与全屏应用程序一起运行的程序.我希望我的程序中的QMessageBox显示在全屏运行的应用程序之上.

该平台是Windows 7,我正在使用Qt.

我试过了:

QMessageBox *msgBox = new QMessageBox;
msgBox->setParent(0);
msgBox->setWindowTitle(title);
msgBox->setText(text);
msgBox->setWindowFlags(Qt::WindowStaysOnTopHint);
msgBox->show();
Run Code Online (Sandbox Code Playgroud)

没有运气.任何提示?

qt dialog qmessagebox

6
推荐指数
1
解决办法
6362
查看次数

QMessageBox没有显示整个标题

#include <QtGui>

int main(int argc, char** argv) 
{
    QApplication app(argc, argv);

    // first
    QMessageBox box(0);
    box.setText("short text");
    box.setWindowTitle("looooooooooooooooong text");
    box.setMinimumSize(800, 0);

    box.exec();


    // second
    //QMessageBox::warning(0, "looooooooooooooooong text", "short text");

    return app.exec();
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

两种方法都会产生此消息框,其中标题显示不正确。我试图调整对话框窗口小部件的大小没有帮助。如何强制QMessageBox显示整个标题?

作为一种解决方法,我可以在标题文本中添加尾随空格,但我认为应该有更好的解决方案。

aminasya@aminasya-desktop:~/qt$ qmake --version
QMake version 2.01a
Using Qt version 4.8.6 in /usr/lib/x86_64-linux-gnu
Run Code Online (Sandbox Code Playgroud)

c++ qt resize qmessagebox

6
推荐指数
1
解决办法
1159
查看次数

QMessageBox带有"不再显示此内容"复选框

如何在下方显示带有"不再显示"复选框的消息框?

我想象的东西看起来像这样:

在此输入图像描述

c++ checkbox qt qmessagebox

6
推荐指数
1
解决办法
3336
查看次数

如何在 QMessageBox 小部件中居中文本和按钮

我正在制作 QMessageBox,但无法将弹出窗口中的文本和按钮居中。

这是我的消息框的代码:

def update_msgbox(self):
        self.msg = QMessageBox(self.centralwidget)
        self.msg.setWindowTitle("  Software Update")
        self.msg.setText("A software update is available. \nDo you want to update now?")
        self.msg.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)
        self.msg.setStyleSheet("QLabel{min-width: 200px;}")
        self.msg.exec_()
Run Code Online (Sandbox Code Playgroud)

这是弹出窗口当前的样子:

在此输入图像描述

有没有办法使文本居中和按钮居中?

python pyqt qmessagebox pyqt5

6
推荐指数
1
解决办法
3496
查看次数

子类化 QMessageBox

我需要自定义QMessageBox。我需要删除框架和标题栏并添加我自己的标题栏和关闭按钮。还需要更换标准按钮,并可能重做框的背景颜色。

是否可以对其进行子类化并实现上述目标?有这方面的例子吗?或者,我应该继承 Dialog 并创建自己的消息框吗?

qt qmessagebox

5
推荐指数
1
解决办法
3171
查看次数

如何在Qt中更改QMessageBox的字体?

我试图用 aQComboBox和 a构建一个简单的应用程序QPushButton。这个想法是QComboBox用系统中所有可用字体的列表来填充。当用户选择一种字体并按 时,QPushButtonQMessageBox出现 并显示所选字体。现在该怎么办呢?

qt qmessagebox

5
推荐指数
1
解决办法
7847
查看次数

QMessageBox在关闭时删除

我有一个问题对你们中的一些人有明显的答案,但我无法弄清楚.

QMessageBox http://qt-project.org/doc/qt-5/qmessagebox.html有两种显示方式,你要么exec()停止程序执行直到用户关闭消息框,要么show()只显示框(可能是在单独的线程中或以某种方式允许程序在框等待用户时继续).

使用show()后如何删除该框?

此代码立即关闭它,消息框出现纳秒,然后它消失了:

QMessageBox *mb = new QMessageBox(parent);
mb->setWindowTitle(title);
mb->setText(text);
mb->show();
delete mb; // obvious, we delete the mb while it was still waiting for user, no wonder it's gone
Run Code Online (Sandbox Code Playgroud)

这段代码也是这样

QMessageBox mb(parent);
mb.setWindowTitle(title);
mb.setText(text);
mb.show();
// obvious, as we exit the function mb which was allocated on stack gets deleted
Run Code Online (Sandbox Code Playgroud)

此代码也是如此

QMessageBox *mb = new QMessageBox(parent);
mb->setWindowTitle(title);
mb->setText(text);
mb->show();
mb->deleteLater(); // surprisingly this doesn't help either
Run Code Online (Sandbox Code Playgroud)

那么如何正确使用show(),而不必以某种复杂的方式处理它的删除?是否有类似deleteOnClose()功能的东西只会告诉它在用户关闭后自行删除?

c++ qt qmessagebox

5
推荐指数
1
解决办法
2355
查看次数

如何更改QMessageBox图标和标题

我正在使用Qt c ++创建一个ui应用程序

我有一条error使用QMessageBoxClass 创建的消息:

QMessageBox errorMessage;
errorMessage.critical(0, "Error", "An error has occured !");
errorMessage.setFixedSize(500, 200);
Run Code Online (Sandbox Code Playgroud)

它就像是:

在此处输入图片说明

我想更改红色圆圈中的图标和标题。

在此处输入图片说明

我将不胜感激任何帮助。

提前致谢。

c++ qt qmessagebox

5
推荐指数
1
解决办法
987
查看次数

QMessageBox里面有链接,无法点击

我已经设置为textFormatQt::RichText但该链接仍然无法点击。

QMessageBox msgBox(this);
msgBox.setWindowTitle(QApplication::applicationName()
                      + " $VER " + QApplication::applicationVersion());
msgBox.setTextFormat(Qt::RichText);   //this is what makes the links clickable
msgBox.setText("<a href=\"google.com\">Google</a>");
msgBox.setStandardButtons(QMessageBox::Ok);
msgBox.exec();
Run Code Online (Sandbox Code Playgroud)

有什么解决办法吗?已确认不适用于 Qt 4.7。

linux ubuntu qmessagebox qt4.7

4
推荐指数
1
解决办法
5050
查看次数

QMessageBox更改标准按钮的文本

我想QMessageBox.Question用于图标.但我想改变标准按钮的文字.我不希望按钮的文本是"是"和"否".我希望他们成为"Evet"和"Iptal".在这里我的代码.

choice = QtGui.QMessageBox.question(self, 'Kaydet!',
                                    'Kaydetmek ?stedi?inize Emin Misiniz?',
                                    QtGui.QMessageBox.Yes | QtGui.QMessageBox.No)
Run Code Online (Sandbox Code Playgroud)

python pyqt qmessagebox

4
推荐指数
2
解决办法
5986
查看次数

标签 统计

qmessagebox ×10

qt ×7

c++ ×4

pyqt ×2

python ×2

checkbox ×1

dialog ×1

linux ×1

pyqt5 ×1

qt4.7 ×1

resize ×1

ubuntu ×1