Makro MessageBox
Popis |
---|
Ukazuje jak uživateli dávat informace v makrech. Version macro : 1.0 Date last modification : 2011-09-19 Autor: Gaël Ecorchard |
Autor |
Gaël Ecorchard |
Download |
None |
Odkazy |
Makro recepty| Jak nainstalovat makra Jak přizpůsobit panely nástrojů |
Verze |
1.0 |
Datum poslední úpravy |
2011-09-19 |
Verze FreeCAD |
None |
Výchozí zástupce |
None |
Viz též |
None |
Popis
Ukazuje jak uživateli dávat informace v makrech.
MessageBox
Skript
Macro_MessageBox.FCMacro
#! /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))