FreeCAD-Doc/localwiki/Macro_MessageBox-cs.html
2018-07-19 18:47:02 -05:00

101 lines
4.8 KiB
HTML

<html><head><title>Macro MessageBox/cs</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><link type='text/css' href='wiki.css' rel='stylesheet'></head><body><h1>Macro MessageBox/cs</h1></div>
<div id="mw-content-text" lang="cs" dir="ltr" class="mw-content-ltr"><hr/><div class="mw-parser-output"><table class="fcinfobox wikitable ct" width="100%" style="float: right; width: 230px; margin-left: 10px;">
<tr>
<td class="ctTitle">
<h3><span class="mw-headline" id="MessageBox"><a href="https://www.freecadweb.org/wiki/index.php?title=File:Text-x-python.png" class="image"><img alt="Text-x-python.png" src="32px-Text-x-python.png" width="32" height="32" srcset="/wiki/images/2/2c/Text-x-python.png 1.5x" /></a> MessageBox</span></h3>
</td></tr>
<tr>
<th class="ctOdd">Description
</th></tr>
<tr>
<td class="ctEven left macro-description">Ukazuje jak uživateli dávat informace v makrech.
</td></tr>
<tr>
<th class="ctOdd">Author
</th></tr>
<tr>
<td class="ctEven macro-author"><a href="https://www.freecadweb.org/wiki/index.php?title=User:Ga%C3%ABl_Ecorchard&amp;action=edit&amp;redlink=1" class="new" title="User:Gaël Ecorchard (page does not exist)">Gaël Ecorchard</a>
</td></tr>
<tr>
<th class="ctOdd">Links
</th></tr>
<tr>
<td class="ctEven"><a href="https://www.freecadweb.org/wiki/index.php?title=Macros_recipes/cs" title="Macros recipes/cs">Makro návody</a><br /><a href="https://www.freecadweb.org/wiki/index.php?title=How_to_install_macros/cs" title="How to install macros/cs">How to install macros</a><br /><a href="https://www.freecadweb.org/wiki/index.php?title=Customize_Toolbars/cs" title="Customize Toolbars/cs">How to customize toolbars</a>
</td></tr>
<tr>
<th class="ctOdd">Version
</th></tr>
<tr>
<td class="ctEven macro-version">1.0
</td></tr>
<tr>
<th class="ctOdd">Date last modification
</th></tr>
<tr>
<td class="ctEven macro-date">2011-09-19
</td></tr>
<tr>
<th class="ctOdd">
</th></tr>
<tr>
<td class="ctToc"><br /><div id="toc" class="toc"><div class="toctitle"><h2>Contents</h2></div>
<ul>
<li class="toclevel-1"><a href="#MessageBox"><span class="tocnumber">1</span> <span class="toctext">MessageBox</span></a></li>
</ul>
</div>
</td></tr>
</table>
<p><br />
</p><p>Ukazuje jak uživateli dávat informace v makrech.
</p><p><a href="https://www.freecadweb.org/wiki/index.php?title=File:Macro_MessageBox_00.png" class="image" title="MessageBox"><img alt="MessageBox" src="480px-Macro_MessageBox_00.png" width="480" height="313" srcset="/wiki/images/c/cc/Macro_MessageBox_00.png 1.5x" /></a>
</p><p><br />
</p>
<pre>#! /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)) </pre>
<p><br />
Aby bylo možné používat znaky s diakritickými znaménky v textových polích z <b>Qt</b>, musí se při použítí značky <b> #-*-coding: utf-8-*- </b> přidávat <b>u</b> před zobrazovanou zprávou<br /> Příklad&#160;:
</p>
<pre>diag = QtGui.QMessageBox(QtGui.QMessageBox.Warning, u'Trop d'éléments désignés', msg)
...
...
msg = u'Élément sélectionnés affichés' </pre>
<p><br />
Pro zobrazení víceřádkového textu v dialogovém okně <b>Qt</b>, musí být přidáno <b>"\n"</b> (uvozovky, platné jsou i apostrofy) za každým řádkem.<br />
Platné je i <b> "\r\n"</b> což koresponduje s <b>CR</b> carriage return (návrat vozíku), a <b>LF</b> end of line(posun řádku). Lze použít i <b>" \t"</b> 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 <b>" \nRayon\t: "</b>, značka <b>" \ "</b> (obrácené lomítko) znamená, že jde o příkaz.<br />
Příklad&#160;:
</p>
<pre>diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,u"Coordonnées",u"Coordonnée X&#160;: "+str(x)+"\r\n"+u"Coordonnée Y&#160;: "+str(y)+"\n"+u"Coordonnée Z&#160;:&lt;br&gt;
"+str(z)+"\nRayon\t &#160;: "+str(r)) </pre>
<div style="clear:both"></div>
</div>
</div>
</div><div class="printfooter">
Online version: "<a dir="ltr" href="https://www.freecadweb.org/wiki/index.php?title=Macro_MessageBox/cs&amp;oldid=240022">http://www.freecadweb.org/wiki/index.php?title=Macro_MessageBox/cs&amp;oldid=240022</a>"</div>
<div id="catlinks" class="catlinks" data-mw="interface"></div><div class="visualClear"></div>
</div>
</div>
<div id="mw-navigation">
<h2>Navigation menu</h2>
</body></html>