https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&feed=atom&action=history
How to Use Signals and Slots/es - Revision history
2024-03-28T17:22:45Z
Revision history for this page on the wiki
MediaWiki 1.39.4
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=41575&oldid=prev
Fenicio: Pequeña corrección ortográfica
2024-02-25T09:57:38Z
<p>Pequeña corrección ortográfica</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 09:57, 25 February 2024</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l25">Line 25:</td>
<td colspan="2" class="diff-lineno">Line 25:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''ATENCIÓN!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <code>void miFuncion(int i = 0);</code></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''ATENCIÓN!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <code>void miFuncion(int i = 0);</code></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== <del style="font-weight: bold; text-decoration: none;">Conección </del>==</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>== <ins style="font-weight: bold; text-decoration: none;">Conexión</ins>==</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Puedes conectar una señal a través de esta forma:</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Puedes conectar una señal a través de esta forma:</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l38">Line 38:</td>
<td colspan="2" class="diff-lineno">Line 38:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></code></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></code></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== Más profundo ==</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>==Más profundo==</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal "clicked" cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función <code>connect()</code> para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal "clicked" cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función <code>connect()</code> para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l52">Line 52:</td>
<td colspan="2" class="diff-lineno">Line 52:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== Vea también ==</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>==Vea también==</div></td></tr>
</table>
Fenicio
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=15933&oldid=prev
AutoSpider: Remove non-functioning "toc" command
2015-04-17T12:22:33Z
<p>Remove non-functioning "toc" command</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:22, 17 April 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l8">Line 8:</td>
<td colspan="2" class="diff-lineno">Line 8:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Spanish]]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Spanish]]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">[toc align_right="yes" depth="3"]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Español''' [[How_to_Use_Signals_and_Slots|English]] [[How_to_Use_Signals_and_Slots_SimplifiedChinese|简体中文]]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Español''' [[How_to_Use_Signals_and_Slots|English]] [[How_to_Use_Signals_and_Slots_SimplifiedChinese|简体中文]]</div></td></tr>
</table>
AutoSpider
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=14243&oldid=prev
AutoSpider: AutoSpider moved page How to Use Signals and Slots Spanish to How to Use Signals and Slots/es: Localisation
2015-03-16T16:00:59Z
<p>AutoSpider moved page <a href="/How_to_Use_Signals_and_Slots_Spanish" class="mw-redirect" title="How to Use Signals and Slots Spanish">How to Use Signals and Slots Spanish</a> to <a href="/How_to_Use_Signals_and_Slots/es" title="How to Use Signals and Slots/es">How to Use Signals and Slots/es</a>: Localisation</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<tr class="diff-title" lang="en">
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 16:00, 16 March 2015</td>
</tr><tr><td colspan="2" class="diff-notice" lang="en"><div class="mw-diff-empty">(No difference)</div>
</td></tr></table>
AutoSpider
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=9463&oldid=prev
AutoSpider: Add "cleanup" tag
2015-03-03T15:48:41Z
<p>Add "cleanup" tag</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 15:48, 3 March 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">{{Cleanup | reason=Auto-imported from ExpressionEngine.}}</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:QtDevelopmentSpanish::General]]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:QtDevelopmentSpanish::General]]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:HowTo]]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:HowTo]]</div></td></tr>
</table>
AutoSpider
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=6935&oldid=prev
Maintenance script at 10:11, 25 February 2015
2015-02-25T10:11:54Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 10:11, 25 February 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[[Category:QtDevelopmentSpanish::General]]<del style="font-weight: bold; text-decoration: none;"><br /></del>[[Category:HowTo]]<del style="font-weight: bold; text-decoration: none;"><br /></del>[[Category:Snippets]]<del style="font-weight: bold; text-decoration: none;"><br /></del>[[Category:Tutorial]]<del style="font-weight: bold; text-decoration: none;"><br /></del>[[Category:Learning]]<del style="font-weight: bold; text-decoration: none;"><br /></del>[[Category:Spanish]]</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:QtDevelopmentSpanish::General]]</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:HowTo]]</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Snippets]]</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Tutorial]]</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Learning]]</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Spanish]]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[toc align_right=<del style="font-weight: bold; text-decoration: none;">&quot;</del>yes<del style="font-weight: bold; text-decoration: none;">&amp;quot; </del>depth=<del style="font-weight: bold; text-decoration: none;">&quot;</del>3<del style="font-weight: bold; text-decoration: none;">&amp;quot;</del>]</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[toc align_right=<ins style="font-weight: bold; text-decoration: none;">"</ins>yes<ins style="font-weight: bold; text-decoration: none;">" </ins>depth=<ins style="font-weight: bold; text-decoration: none;">"</ins>3<ins style="font-weight: bold; text-decoration: none;">"</ins>]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Español''' [[How_to_Use_Signals_and_Slots|English]] [[How_to_Use_Signals_and_Slots_SimplifiedChinese|简体中文]]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Español''' [[How_to_Use_Signals_and_Slots|English]] [[How_to_Use_Signals_and_Slots_SimplifiedChinese|简体中文]]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>= Cómo Usar Señales (<del style="font-weight: bold; text-decoration: none;">&quot;</del>Signals<del style="font-weight: bold; text-decoration: none;">&amp;quot;</del>) y Ranuras (<del style="font-weight: bold; text-decoration: none;">&quot;</del>Slots<del style="font-weight: bold; text-decoration: none;">&amp;quot;</del>)? =</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>= Cómo Usar Señales (<ins style="font-weight: bold; text-decoration: none;">"</ins>Signals<ins style="font-weight: bold; text-decoration: none;">"</ins>) y Ranuras (<ins style="font-weight: bold; text-decoration: none;">"</ins>Slots<ins style="font-weight: bold; text-decoration: none;">"</ins>)? =</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Introducción ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Introducción ==</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l11">Line 11:</td>
<td colspan="2" class="diff-lineno">Line 16:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Recuerdas el viejo ''call-back'' del sistema X-Window? Generalmente este no se escribe seguro y flexible. Hay muchos problemas con ellos. Qt oferta una nueva gestión de eventos del sistema - las conexiones ''signal-slot''. Imagínese un despertador. Cuando la alarma está sonando, está enviando la señal (''emitting''). Y tú estás actuando como una ranura.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Recuerdas el viejo ''call-back'' del sistema X-Window? Generalmente este no se escribe seguro y flexible. Hay muchos problemas con ellos. Qt oferta una nueva gestión de eventos del sistema - las conexiones ''signal-slot''. Imagínese un despertador. Cuando la alarma está sonando, está enviando la señal (''emitting''). Y tú estás actuando como una ranura.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>La traducción de <del style="font-weight: bold; text-decoration: none;">&quot;</del>slot<del style="font-weight: bold; text-decoration: none;">&amp;quot; </del>es ranura pero en realidad se refiere a una acción a tomar dependiendo de la señal que se emita. Hecha esta aclaración, proseguimos…</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>La traducción de <ins style="font-weight: bold; text-decoration: none;">"</ins>slot<ins style="font-weight: bold; text-decoration: none;">" </ins>es ranura pero en realidad se refiere a una acción a tomar dependiendo de la señal que se emita. Hecha esta aclaración, proseguimos…</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada clase QObject puede tener tantas señales como desees.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada clase QObject puede tener tantas señales como desees.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l17">Line 17:</td>
<td colspan="2" class="diff-lineno">Line 22:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Puedes conectar una señal con otra (crear una cadena de señales).</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Puedes conectar una señal con otra (crear una cadena de señales).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada una de estas señales y ranuras pueden tener conexiones ilimitadas entre si.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada una de estas señales y ranuras pueden tener conexiones ilimitadas entre si.</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* '''ATENCIÓN!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <del style="font-weight: bold; text-decoration: none;">&lt;</del>code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>void miFuncion(int i = 0);<del style="font-weight: bold; text-decoration: none;">&lt;</del>/code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* '''ATENCIÓN!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <ins style="font-weight: bold; text-decoration: none;"><</ins>code<ins style="font-weight: bold; text-decoration: none;">></ins>void miFuncion(int i = 0);<ins style="font-weight: bold; text-decoration: none;"><</ins>/code<ins style="font-weight: bold; text-decoration: none;">></ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Conección ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Conección ==</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Puedes conectar una señal a través de esta forma:<del style="font-weight: bold; text-decoration: none;"><br /></del><code><del style="font-weight: bold; text-decoration: none;"><br /></del>QObject::connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * method);<del style="font-weight: bold; text-decoration: none;"><br /></del></code><del style="font-weight: bold; text-decoration: none;"><br /></del>Tienes que vincular ''const char * signal'' y ''const char * method'' a un SIGNAL () y SLOT() macro respectivamente.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Puedes conectar una señal a través de esta forma:</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><code></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>QObject::connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * method);</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div></code></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Tienes que vincular ''const char * signal'' y ''const char * method'' a un SIGNAL () y SLOT() macro respectivamente.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Y también puedes desconectar la señal de la ranura:<del style="font-weight: bold; text-decoration: none;"><br /></del><code><del style="font-weight: bold; text-decoration: none;"><br /></del>QObject::disconnect ( const QObject * sender, const char * signal, const QObject * receiver, const char * method);<del style="font-weight: bold; text-decoration: none;"><br /></del></code></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Y también puedes desconectar la señal de la ranura:</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><code></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>QObject::disconnect ( const QObject * sender, const char * signal, const QObject * receiver, const char * method);</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div></code></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Más profundo ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Más profundo ==</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal <del style="font-weight: bold; text-decoration: none;">&quot;</del>clicked<del style="font-weight: bold; text-decoration: none;">&amp;quot; </del>cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función <del style="font-weight: bold; text-decoration: none;">&lt;</del>code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>connect()<del style="font-weight: bold; text-decoration: none;">&lt;</del>/code<del style="font-weight: bold; text-decoration: none;">&amp;gt; </del>para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal <ins style="font-weight: bold; text-decoration: none;">"</ins>clicked<ins style="font-weight: bold; text-decoration: none;">" </ins>cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función <ins style="font-weight: bold; text-decoration: none;"><</ins>code<ins style="font-weight: bold; text-decoration: none;">></ins>connect()<ins style="font-weight: bold; text-decoration: none;"><</ins>/code<ins style="font-weight: bold; text-decoration: none;">> </ins>para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Por ejemplo, si una señal de un botón de Cerrar <del style="font-weight: bold; text-decoration: none;">&lt;</del>code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>clicked()<del style="font-weight: bold; text-decoration: none;">&lt;</del>/code<del style="font-weight: bold; text-decoration: none;">&amp;gt; </del>esta conectada a la ranura <del style="font-weight: bold; text-decoration: none;">&lt;</del>code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>quit()<del style="font-weight: bold; text-decoration: none;">&lt;</del>/code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>, el click del usuario en Cerrar haría que la aplicación cerrara completamente, valga la redundancia. El código se escribiría de esta forma:</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Por ejemplo, si una señal de un botón de Cerrar <ins style="font-weight: bold; text-decoration: none;"><</ins>code<ins style="font-weight: bold; text-decoration: none;">></ins>clicked()<ins style="font-weight: bold; text-decoration: none;"><</ins>/code<ins style="font-weight: bold; text-decoration: none;">> </ins>esta conectada a la ranura <ins style="font-weight: bold; text-decoration: none;"><</ins>code<ins style="font-weight: bold; text-decoration: none;">></ins>quit()<ins style="font-weight: bold; text-decoration: none;"><</ins>/code<ins style="font-weight: bold; text-decoration: none;">></ins>, el click del usuario en Cerrar haría que la aplicación cerrara completamente, valga la redundancia. El código se escribiría de esta forma:</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div><code>connect(button, SIGNAL (clicked()), qApp, SLOT (quit()));<code></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div><code>connect(button, SIGNAL (clicked()), qApp, SLOT (quit()));<code></div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l35">Line 35:</td>
<td colspan="2" class="diff-lineno">Line 47:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Las conexiones pueden ser añadidas o eliminadas en cualquier momento durante la ejecución de una aplicación Qt, pueden ser configuradas de forma que se ejecuten cuando se emite una señal o ponerse en cola para su posterior ejecución, incluso también entre objetos en diferentes hilos.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Las conexiones pueden ser añadidas o eliminadas en cualquier momento durante la ejecución de una aplicación Qt, pueden ser configuradas de forma que se ejecuten cuando se emite una señal o ponerse en cola para su posterior ejecución, incluso también entre objetos en diferentes hilos.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>El mecanismo de señales y ranuras es implementado por C+''. La implementación usa el preprocesador de C''+ y <del style="font-weight: bold; text-decoration: none;">&lt;</del>code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>moc<del style="font-weight: bold; text-decoration: none;">&amp;lt;</del>/code<del style="font-weight: bold; text-decoration: none;">&amp;gt;</del>, el compilador Meta-Objeto incluido con Qt. La generación de código se realiza de forma automática por substitución: Qt's-Build-System. Los desarrolladores no tienen que modificar o incluso ver el código generado.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>El mecanismo de señales y ranuras es implementado por C+''. La implementación usa el preprocesador de C''+ y <ins style="font-weight: bold; text-decoration: none;"><</ins>code<ins style="font-weight: bold; text-decoration: none;">></ins>moc<ins style="font-weight: bold; text-decoration: none;"><</ins>/code<ins style="font-weight: bold; text-decoration: none;">></ins>, el compilador Meta-Objeto incluido con Qt. La generación de código se realiza de forma automática por substitución: Qt's-Build-System. Los desarrolladores no tienen que modificar o incluso ver el código generado.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Vea también ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Vea también ==</div></td></tr>
</table>
Maintenance script
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=4457&oldid=prev
Maintenance script at 09:51, 24 February 2015
2015-02-24T09:51:34Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 09:51, 24 February 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">'''Español''' </del>[[<del style="font-weight: bold; text-decoration: none;">How to Use Signals and Slots|English</del>]] [[<del style="font-weight: bold; text-decoration: none;">How to Use Signals and Slots SimplifiedChinese|简体中文</del>]]</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[<ins style="font-weight: bold; text-decoration: none;">Category:QtDevelopmentSpanish::General</ins>]]<ins style="font-weight: bold; text-decoration: none;"><br /></ins>[[<ins style="font-weight: bold; text-decoration: none;">Category:HowTo]]<br />[[Category:Snippets]]<br />[[Category:Tutorial]]<br />[[Category:Learning]]<br />[[Category:Spanish</ins>]]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>=<del style="font-weight: bold; text-decoration: none;">Cómo Usar Señales (“Signals”) y Ranuras (“Slots”)?</del>=</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">[toc align_right</ins>=<ins style="font-weight: bold; text-decoration: none;">&quot;yes&amp;quot; depth</ins>=<ins style="font-weight: bold; text-decoration: none;">&quot;3&amp;quot;]</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">==Introducción==</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">'''Español''' [[How_to_Use_Signals_and_Slots|English]] [[How_to_Use_Signals_and_Slots_SimplifiedChinese|简体中文]]</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Recuerdas el viejo ''call-back'' del sistema X-Window? Generalmente este no se escribe seguro </del>y <del style="font-weight: bold; text-decoration: none;">flexible. Hay muchos problemas con ellos. Qt oferta una nueva gestión de eventos del sistema – las conexiones ''signal-slot''. Imagínese un despertador. Cuando la alarma está sonando, está enviando la señal </del>(<del style="font-weight: bold; text-decoration: none;">''emitting''</del>)<del style="font-weight: bold; text-decoration: none;">. Y tú estás actuando como una ranura.</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">= Cómo Usar Señales (&quot;Signals&amp;quot;) </ins>y <ins style="font-weight: bold; text-decoration: none;">Ranuras </ins>(<ins style="font-weight: bold; text-decoration: none;">&quot;Slots&amp;quot;</ins>)<ins style="font-weight: bold; text-decoration: none;">? =</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>La traducción de <del style="font-weight: bold; text-decoration: none;">“slot” </del>es ranura pero en realidad se refiere a una acción a tomar dependiendo de la señal que se emita. Hecha esta aclaración, proseguimos…</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">== Introducción ==</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Recuerdas el viejo ''call-back'' del sistema X-Window? Generalmente este no se escribe seguro y flexible. Hay muchos problemas con ellos. Qt oferta una nueva gestión de eventos del sistema - las conexiones ''signal-slot''. Imagínese un despertador. Cuando la alarma está sonando, está enviando la señal (''emitting''). Y tú estás actuando como una ranura.</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>La traducción de <ins style="font-weight: bold; text-decoration: none;">&quot;slot&amp;quot; </ins>es ranura pero en realidad se refiere a una acción a tomar dependiendo de la señal que se emita. Hecha esta aclaración, proseguimos…</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada clase QObject puede tener tantas señales como desees.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada clase QObject puede tener tantas señales como desees.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l13">Line 13:</td>
<td colspan="2" class="diff-lineno">Line 17:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Puedes conectar una señal con otra (crear una cadena de señales).</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Puedes conectar una señal con otra (crear una cadena de señales).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada una de estas señales y ranuras pueden tener conexiones ilimitadas entre si.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Cada una de estas señales y ranuras pueden tener conexiones ilimitadas entre si.</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* '''<del style="font-weight: bold; text-decoration: none;"><span class="caps"></del>ATENCIÓN<del style="font-weight: bold; text-decoration: none;"></span></del>!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <del style="font-weight: bold; text-decoration: none;"><</del>code<del style="font-weight: bold; text-decoration: none;">></del>void miFuncion(int i = 0);<del style="font-weight: bold; text-decoration: none;"><</del>/code<del style="font-weight: bold; text-decoration: none;">></del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* '''ATENCIÓN!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <ins style="font-weight: bold; text-decoration: none;">&lt;</ins>code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;</ins>void miFuncion(int i = 0);<ins style="font-weight: bold; text-decoration: none;">&lt;</ins>/code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">== Conección ==</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">==Conección==</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Puedes conectar una señal a través de esta forma:<br /><code><br />QObject::connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * method);<br /></code><br />Tienes que vincular ''const char * signal'' y ''const char * method'' a un SIGNAL () y SLOT() macro respectivamente.</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Puedes conectar una </del>señal <del style="font-weight: bold; text-decoration: none;">a través </del>de <del style="font-weight: bold; text-decoration: none;">esta forma</del>:<br /> <del style="font-weight: bold; text-decoration: none;">Tienes que vincular ''</del>const char * signal<del style="font-weight: bold; text-decoration: none;">'' y ''</del>const char * method<del style="font-weight: bold; text-decoration: none;">'' a un <span class="caps">SIGNAL</del></<del style="font-weight: bold; text-decoration: none;">span> y <span class="caps"</del>><del style="font-weight: bold; text-decoration: none;">SLOT</del></<del style="font-weight: bold; text-decoration: none;">span</del>> <del style="font-weight: bold; text-decoration: none;">macro respectivamente.</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Y también puedes desconectar la </ins>señal de <ins style="font-weight: bold; text-decoration: none;">la ranura</ins>:<br /><ins style="font-weight: bold; text-decoration: none;"><code><br />QObject::disconnect ( const QObject * sender, </ins>const char * signal<ins style="font-weight: bold; text-decoration: none;">, const QObject * receiver, </ins>const char * method<ins style="font-weight: bold; text-decoration: none;">);</ins><<ins style="font-weight: bold; text-decoration: none;">br </ins>/></<ins style="font-weight: bold; text-decoration: none;">code</ins>></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Y también puedes desconectar la señal de la ranura:<br /></del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">== Más profundo ==</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">==Más profundo==</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal &quot;clicked&amp;quot; cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función &lt;code&amp;gt;connect()&lt;/code&amp;gt; para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Los widgets emiten una señal cuando ocurre un evento. </del>Por ejemplo, un botón <del style="font-weight: bold; text-decoration: none;">emite una señal “clicked” cuando este es cliqueado. Un desarrollador puede escoger conectar </del>la <del style="font-weight: bold; text-decoration: none;">señal a una </del>ranura <del style="font-weight: bold; text-decoration: none;">llamando a la función <</del>code<del style="font-weight: bold; text-decoration: none;">>connect</del>()<del style="font-weight: bold; text-decoration: none;"><</del>/code<del style="font-weight: bold; text-decoration: none;">> para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas</del>, <del style="font-weight: bold; text-decoration: none;">lo </del>que <del style="font-weight: bold; text-decoration: none;">hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error</del>, <del style="font-weight: bold; text-decoration: none;">estos serían reportados como alertas y no causarían una interrupción total de </del>la <del style="font-weight: bold; text-decoration: none;">aplicación</del>.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Por ejemplo, <ins style="font-weight: bold; text-decoration: none;">si una señal de </ins>un botón <ins style="font-weight: bold; text-decoration: none;">de Cerrar &lt;code&amp;gt;clicked()&lt;/code&amp;gt; esta conectada a </ins>la ranura <ins style="font-weight: bold; text-decoration: none;">&lt;</ins>code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;quit</ins>()<ins style="font-weight: bold; text-decoration: none;">&lt;</ins>/code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;</ins>, <ins style="font-weight: bold; text-decoration: none;">el click del usuario en Cerrar haría </ins>que <ins style="font-weight: bold; text-decoration: none;">la aplicación cerrara completamente</ins>, <ins style="font-weight: bold; text-decoration: none;">valga </ins>la <ins style="font-weight: bold; text-decoration: none;">redundancia</ins>. <ins style="font-weight: bold; text-decoration: none;">El código se escribiría de esta forma:</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Por ejemplo, si una señal de un botón de Cerrar </del><code>clicked()<del style="font-weight: bold; text-decoration: none;"></code> esta conectada a la ranura <code></del>quit()<<del style="font-weight: bold; text-decoration: none;">/</del>code><del style="font-weight: bold; text-decoration: none;">, el click del usuario en Cerrar haría que la aplicación cerrara completamente, valga la redundancia. El código se escribiría de esta forma:</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><code><ins style="font-weight: bold; text-decoration: none;">connect(button, SIGNAL (</ins>clicked()<ins style="font-weight: bold; text-decoration: none;">), qApp, SLOT (</ins>quit()<ins style="font-weight: bold; text-decoration: none;">));</ins><code></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Las conexiones pueden ser añadidas o eliminadas en cualquier momento durante la ejecución de una aplicación Qt, pueden ser configuradas de forma que se ejecuten cuando se emite una señal o ponerse en cola para su posterior ejecución, incluso también entre objetos en diferentes hilos.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Las conexiones pueden ser añadidas o eliminadas en cualquier momento durante la ejecución de una aplicación Qt, pueden ser configuradas de forma que se ejecuten cuando se emite una señal o ponerse en cola para su posterior ejecución, incluso también entre objetos en diferentes hilos.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>El mecanismo de señales y ranuras es implementado por C+<del style="font-weight: bold; text-decoration: none;">+</del>. La implementación usa el preprocesador de C<del style="font-weight: bold; text-decoration: none;">+</del>+ y <del style="font-weight: bold; text-decoration: none;"><</del>code<del style="font-weight: bold; text-decoration: none;">></del>moc<del style="font-weight: bold; text-decoration: none;"><</del>/code<del style="font-weight: bold; text-decoration: none;">></del>, el compilador Meta-Objeto incluido con Qt. La generación de código se realiza de forma automática por substitución: <del style="font-weight: bold; text-decoration: none;">Qt’s</del>-Build-System. Los desarrolladores no tienen que modificar o incluso ver el código generado.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>El mecanismo de señales y ranuras es implementado por C+<ins style="font-weight: bold; text-decoration: none;">''</ins>. La implementación usa el preprocesador de C<ins style="font-weight: bold; text-decoration: none;">''</ins>+ y <ins style="font-weight: bold; text-decoration: none;">&lt;</ins>code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;</ins>moc<ins style="font-weight: bold; text-decoration: none;">&amp;lt;</ins>/code<ins style="font-weight: bold; text-decoration: none;">&amp;gt;</ins>, el compilador Meta-Objeto incluido con Qt. La generación de código se realiza de forma automática por substitución: <ins style="font-weight: bold; text-decoration: none;">Qt's</ins>-Build-System. Los desarrolladores no tienen que modificar o incluso ver el código generado.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>==Vea también==</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>== Vea también ==</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">[http://blog.csdn.net/qter_wd007/article/details/5598264 Qt中的信号与槽详解] ''[blog.csdn.net]''</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">===Categories:===</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:HowTo|HowTo]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:Learning|Learning]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:QtDevelopmentSpanish|QtDevelopmentSpanish]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">** [[:Category:QtDevelopmentSpanish::General|General]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:snippets|snippets]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:Spanish|Spanish]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[:Category:Tutorial|Tutorial]]</del></div></td><td colspan="2" class="diff-side-added"></td></tr>
</table>
Maintenance script
https://wiki.qt.io/index.php?title=How_to_Use_Signals_and_Slots/es&diff=1061&oldid=prev
Maintenance script at 15:52, 14 January 2015
2015-01-14T15:52:51Z
<p></p>
<p><b>New page</b></p><div>'''Español''' [[How to Use Signals and Slots|English]] [[How to Use Signals and Slots SimplifiedChinese|简体中文]]<br />
<br />
=Cómo Usar Señales (“Signals”) y Ranuras (“Slots”)?=<br />
<br />
==Introducción==<br />
<br />
Recuerdas el viejo ''call-back'' del sistema X-Window? Generalmente este no se escribe seguro y flexible. Hay muchos problemas con ellos. Qt oferta una nueva gestión de eventos del sistema – las conexiones ''signal-slot''. Imagínese un despertador. Cuando la alarma está sonando, está enviando la señal (''emitting''). Y tú estás actuando como una ranura.<br />
<br />
La traducción de “slot” es ranura pero en realidad se refiere a una acción a tomar dependiendo de la señal que se emita. Hecha esta aclaración, proseguimos…<br />
<br />
* Cada clase QObject puede tener tantas señales como desees.<br />
* Solo puedes emitir una señal desde la clase donde esta se encuentra.<br />
* Puedes conectar una señal con otra (crear una cadena de señales).<br />
* Cada una de estas señales y ranuras pueden tener conexiones ilimitadas entre si.<br />
* '''<span class="caps">ATENCIÓN</span>!''' No puedes asignar valores por defecto a los atributos de una ranura. ''ej'' <code>void miFuncion(int i = 0);</code><br />
<br />
==Conección==<br />
<br />
Puedes conectar una señal a través de esta forma:<br /> Tienes que vincular ''const char * signal'' y ''const char * method'' a un <span class="caps">SIGNAL</span> y <span class="caps">SLOT</span> macro respectivamente.<br />
<br />
Y también puedes desconectar la señal de la ranura:<br /><br />
<br />
==Más profundo==<br />
<br />
Los widgets emiten una señal cuando ocurre un evento. Por ejemplo, un botón emite una señal “clicked” cuando este es cliqueado. Un desarrollador puede escoger conectar la señal a una ranura llamando a la función <code>connect()</code> para relacionarlos entre si. El mecanismo de señales y ranuras de Qt no requiere de clases para tener conocimiento entre ellas, lo que hace mucho más fácil desarrollar alta reutilización de las mismas. Como señales y ranuras son tipeado-seguro (type-safe), si hubiera algún error, estos serían reportados como alertas y no causarían una interrupción total de la aplicación.<br />
<br />
Por ejemplo, si una señal de un botón de Cerrar <code>clicked()</code> esta conectada a la ranura <code>quit()</code>, el click del usuario en Cerrar haría que la aplicación cerrara completamente, valga la redundancia. El código se escribiría de esta forma:<br />
<br />
Las conexiones pueden ser añadidas o eliminadas en cualquier momento durante la ejecución de una aplicación Qt, pueden ser configuradas de forma que se ejecuten cuando se emite una señal o ponerse en cola para su posterior ejecución, incluso también entre objetos en diferentes hilos.<br />
<br />
El mecanismo de señales y ranuras es implementado por C++. La implementación usa el preprocesador de C++ y <code>moc</code>, el compilador Meta-Objeto incluido con Qt. La generación de código se realiza de forma automática por substitución: Qt’s-Build-System. Los desarrolladores no tienen que modificar o incluso ver el código generado.<br />
<br />
Además de manejar las señales y las ranuras, el compilador de Meta-Objetos de Qt apoya mecanismo de traducción, su sistema de propiedad, y su amplia información de tipado en tiempo de ejecución. También hace introspección en tiempo de ejecución de programas C++ de una manera que funciona en todas las plataformas soportadas.<br />
<br />
==Vea también==<br />
<br />
[http://blog.csdn.net/qter_wd007/article/details/5598264 Qt中的信号与槽详解] ''[blog.csdn.net]''<br />
<br />
===Categories:===<br />
<br />
* [[:Category:HowTo|HowTo]]<br />
* [[:Category:Learning|Learning]]<br />
* [[:Category:QtDevelopmentSpanish|QtDevelopmentSpanish]]<br />
** [[:Category:QtDevelopmentSpanish::General|General]]<br />
* [[:Category:snippets|snippets]]<br />
* [[:Category:Spanish|Spanish]]<br />
* [[:Category:Tutorial|Tutorial]]</div>
Maintenance script