Macro MessageBox/cs


Text-x-python.png MessageBox

Description
Ukazuje jak uživateli dávat informace v makrech.
Author
Gaël Ecorchard
Links
Makro návody
How to install macros
How to customize toolbars
Version
1.0
Date last modification
2011-09-19

Contents


Ukazuje jak uživateli dávat informace v makrech.

MessageBox


#! /usr/bin/env python
# -*- coding: utf-8 -*-
 
"""Show how to give information to the user in macros
"""
from PySide 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)) 


Aby bylo možné používat znaky s diakritickými znaménky v textových polích z Qt, musí se při použítí značky #-*-coding: utf-8-*- přidávat u před zobrazovanou zprávou
Příklad :

diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, u'Trop d'éléments désignés', msg)
    ...
    ...
msg = u'Élément sélectionnés affichés' 


Pro zobrazení víceřádkového textu v dialogovém okně Qt, musí být přidáno "\n" (uvozovky, platné jsou i apostrofy) za každým řádkem.
Platné je i "\r\n" což koresponduje s CR carriage return (návrat vozíku), a LF end of line(posun řádku). Lze použít i " \t" což je tabulátor. Znaky by měly být mezi uvozovkami (a apostrofy) jako znakový řetězec. Značky mohou být hned vedle zobrazovaného textu " \nRayon\t: ", značka " \ " (obrácené lomítko) znamená, že jde o příkaz.
Příklad :

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)) 
Online version: "http://www.freecadweb.org/wiki/index.php?title=Macro_MessageBox/cs&oldid=240022"

Navigation menu