How to get the current QApplication in pyQt?
I am trying to get a reference to the current QApplication object with pyQt5, but couldn't find the function. My search about "pyQt get current QApplication" shows results about how to create an QApplication. So my question is:
Is there a global QApplication object, and if so how can get a reference to an existing (the current) application.
The reason I ask, is that I want to test if a debugging code is running within a Qt GUI application. Then, I'd like to bring up a QMessagebox
to show error messages if the function is used in a Qt application; or print out a message to stdout otherwise.
python pyqt5
add a comment |
I am trying to get a reference to the current QApplication object with pyQt5, but couldn't find the function. My search about "pyQt get current QApplication" shows results about how to create an QApplication. So my question is:
Is there a global QApplication object, and if so how can get a reference to an existing (the current) application.
The reason I ask, is that I want to test if a debugging code is running within a Qt GUI application. Then, I'd like to bring up a QMessagebox
to show error messages if the function is used in a Qt application; or print out a message to stdout otherwise.
python pyqt5
add a comment |
I am trying to get a reference to the current QApplication object with pyQt5, but couldn't find the function. My search about "pyQt get current QApplication" shows results about how to create an QApplication. So my question is:
Is there a global QApplication object, and if so how can get a reference to an existing (the current) application.
The reason I ask, is that I want to test if a debugging code is running within a Qt GUI application. Then, I'd like to bring up a QMessagebox
to show error messages if the function is used in a Qt application; or print out a message to stdout otherwise.
python pyqt5
I am trying to get a reference to the current QApplication object with pyQt5, but couldn't find the function. My search about "pyQt get current QApplication" shows results about how to create an QApplication. So my question is:
Is there a global QApplication object, and if so how can get a reference to an existing (the current) application.
The reason I ask, is that I want to test if a debugging code is running within a Qt GUI application. Then, I'd like to bring up a QMessagebox
to show error messages if the function is used in a Qt application; or print out a message to stdout otherwise.
python pyqt5
python pyqt5
asked Nov 20 '18 at 6:56


tinlyxtinlyx
10.7k1856108
10.7k1856108
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
there should only be one QApplication, and if we want to obtain the existing one, you must use instance()
, a common approach is to use the following technique:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication()
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53387733%2fhow-to-get-the-current-qapplication-in-pyqt%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
there should only be one QApplication, and if we want to obtain the existing one, you must use instance()
, a common approach is to use the following technique:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication()
add a comment |
there should only be one QApplication, and if we want to obtain the existing one, you must use instance()
, a common approach is to use the following technique:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication()
add a comment |
there should only be one QApplication, and if we want to obtain the existing one, you must use instance()
, a common approach is to use the following technique:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication()
there should only be one QApplication, and if we want to obtain the existing one, you must use instance()
, a common approach is to use the following technique:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication()
answered Nov 20 '18 at 6:59


eyllanesceyllanesc
75.8k103156
75.8k103156
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53387733%2fhow-to-get-the-current-qapplication-in-pyqt%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown