Macro MessageBox: Difference between revisions
Renatorivo (talk | contribs) (Marked this version for translation) |
(delete spaces) |
||
Line 11: | Line 11: | ||
</translate> |
</translate> |
||
{{Code|code= |
|||
<syntaxhighlight> |
|||
#! /usr/bin/env python |
|||
# -*- coding: utf-8 -*- |
|||
"""Show how to give information to the user in macros |
|||
""" |
|||
from PyQt4 import QtCore, QtGui |
|||
def errorDialog(msg): |
|||
# Create a simple dialog QMessageBox |
|||
# The first argument indicates the icon used: one of QtGui.QMessageBox.{NoIcon, Information, Warning, Critical, Question} |
|||
diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, 'Error in macro MessageBox', msg) |
|||
diag.setWindowModality(QtCore.Qt.ApplicationModal) |
|||
diag.exec_() |
|||
msg = 'Example of warning message' |
|||
errorDialog(msg) |
|||
raise(Exception(msg)) |
|||
}} |
|||
</syntaxhighlight> |
|||
<translate> |
<translate> |
||
Line 38: | Line 38: | ||
</translate> |
</translate> |
||
{{Code|code= |
|||
<syntaxhighlight> |
|||
diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, u'Trop d'éléments désignés', msg) |
diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, u'Trop d'éléments désignés', msg) |
||
... |
... |
||
... |
... |
||
msg = u'Élément sélectionnés affichés' |
|||
}} |
|||
</syntaxhighlight> |
|||
<translate> |
<translate> |
||
Line 53: | Line 53: | ||
</translate> |
</translate> |
||
{{Code|code= |
|||
<syntaxhighlight> |
|||
diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,u"Coordonnées",u"Coordonnée X : "+str(x)+"\r\n"+u"Coordonnée Y : "+str(y)+"\n"+u"Coordonnée Z :<br> |
diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,u"Coordonnées",u"Coordonnée X : "+str(x)+"\r\n"+u"Coordonnée Y : "+str(y)+"\n"+u"Coordonnée Z :<br> |
||
"+str(z)+"\nRayon\t : "+str(r)) |
"+str(z)+"\nRayon\t : "+str(r)) |
||
}} |
|||
</syntaxhighlight> |
|||
{{clear}} |
{{clear}} |
Revision as of 21:23, 26 December 2014
File:Text-x-python MessageBox |
Description |
---|
Show how to give information to the user in macros Author: Gaël Ecorchard |
Author |
Gaël Ecorchard |
Download |
None |
Links |
Macros recipes How to install macros How to customize toolbars |
Macro Version |
1.0 |
Date last modified |
None |
FreeCAD Version(s) |
None |
Default shortcut |
None |
See also |
None |
Show how to give information to the user in macros
#! /usr/bin/env python
# -*- coding: utf-8 -*-
"""Show how to give information to the user in macros
"""
from PyQt4 import QtCore, QtGui
def errorDialog(msg):
# Create a simple dialog QMessageBox
# The first argument indicates the icon used: one of QtGui.QMessageBox.{NoIcon, Information, Warning, Critical, Question}
diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, 'Error in macro MessageBox', msg)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()
msg = 'Example of warning message'
errorDialog(msg)
raise(Exception(msg))
In order to use the accented characters in the text field from Qt, using the tag #-*-coding: utf-8-*- must be added a u before the message to display
Example :
diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, u'Trop d'éléments désignés', msg)
...
...
msg = u'Élément sélectionnés affichés'
To display multiple lines in a dialog box Qt, must be added "\n" (quotation, valid also between apostrophes) between each line.
Valid also "\r\n" which correspond to CR carriage return, and LF end of line, valid also " \t" is a tab, characters should be between quotation marks (and apostrophes) as a character string, the tags can be found next to the text to display " \nRayon\t: ", the tag " \ " (reversed slash) defines the command.
Example :
diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,u"Coordonnées",u"Coordonnée X : "+str(x)+"\r\n"+u"Coordonnée Y : "+str(y)+"\n"+u"Coordonnée Z :<br>
"+str(z)+"\nRayon\t : "+str(r))