<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>solo VB.NET - Visual Basic .Net &#187; Estructuras de Control</title>
	<atom:link href="http://www.solovb.net/index.php/category/estructuras-de-control/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.solovb.net</link>
	<description>Visual Basic.NET, VB.NET, Programación, Tutoriales, Ejemplos</description>
	<lastBuildDate>Mon, 02 Jan 2012 14:30:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>For/Next anidados</title>
		<link>http://www.solovb.net/index.php/2009/01/19/for-next-anidados/</link>
		<comments>http://www.solovb.net/index.php/2009/01/19/for-next-anidados/#comments</comments>
		<pubDate>Mon, 19 Jan 2009 02:57:50 +0000</pubDate>
		<dc:creator>Eliseo</dc:creator>
				<category><![CDATA[Estructuras de Control]]></category>
		<category><![CDATA[For/Next]]></category>

		<guid isPermaLink="false">http://www.solovb.net/?p=83</guid>
		<description><![CDATA[Estoy seguro que en más de una oportunidad tendremos que utilizar For's anidados, son muy utiles para realizar un montón de tareas.

A continuación les muestro un simple ejemplo que utiliza dos For anidades para representar las tablas de multiplicar desde el uno hasta el diez.]]></description>
			<content:encoded><![CDATA[<p>Estoy seguro que en más de una oportunidad tendremos que utilizar For&#8217;s anidados, son muy utiles para realizar un montón de tareas.</p>
<p>A continuación les muestro un simple ejemplo que utiliza dos For anidades para representar las tablas de multiplicar desde el uno hasta el diez.</p>
<p>Creá un nuevo formulario y copia el siguiente código en el evento load.</p>
<p>[Code lang="vbnet"]<br />
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Dim tablas As New TextBox<br />
tablas.Multiline = True<br />
tablas.ScrollBars = ScrollBars.Vertical<br />
tablas.Dock = DockStyle.Fill<br />
Me.Controls.Add(tablas)<br />
tablas.Text = &#8220;T A B L A S&#8221; &amp; vbCrLf<br />
tablas.Text &amp;= &#8220;==========&#8221; &amp; vbCrLf &amp; vbCrLf</p>
<p>For i As Integer = 1 To 10<br />
tablas.Text &amp;= String.Format(&#8220;Tabla del {0}&#8221;, i) &amp; vbCrLf<br />
tablas.Text &amp;= &#8220;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;&#8221; &amp; vbCrLf<br />
For a As Integer = 1 To 10<br />
tablas.Text &amp;= i.ToString &amp; &#8221; x &#8221; &amp; a.ToString &amp; &#8221; = &#8221; &amp; (i * a).ToString &amp; vbCrLf<br />
Next<br />
tablas.Text &amp;= vbCrLf<br />
Next<br />
End Sub</p>
<p>[/Code]</p>
<p>Ahora solo resta ejecutar el programa para que muestre el resultado en el formulario.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.solovb.net/index.php/2009/01/19/for-next-anidados/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Estructura For/Next</title>
		<link>http://www.solovb.net/index.php/2009/01/06/estructura-for-next/</link>
		<comments>http://www.solovb.net/index.php/2009/01/06/estructura-for-next/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 20:19:17 +0000</pubDate>
		<dc:creator>Eliseo</dc:creator>
				<category><![CDATA[Estructuras de Control]]></category>
		<category><![CDATA[estructura]]></category>
		<category><![CDATA[For/Next]]></category>

		<guid isPermaLink="false">http://www.solovb.com/LF/?p=26</guid>
		<description><![CDATA[El For Next realiza un repetición (bucle) una determinada cantidad de veces. Ademas va manteniendo una variable que almacena el valor correspondiente al número de repetición.]]></description>
			<content:encoded><![CDATA[<p>El For Next realiza un repetición (bucle) una determinada cantidad de veces. Ademas va manteniendo una variable que almacena el valor correspondiente al número de repetición.</p>
<pre class="brush: vb; title: ;">
Dim i As Integer

For i = 1 To 10
    MsgBox(&quot;Repetición Nro: &quot; &amp; i)
Next
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.solovb.net/index.php/2009/01/06/estructura-for-next/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Estructura Select Case</title>
		<link>http://www.solovb.net/index.php/2009/01/06/estructura-select-case/</link>
		<comments>http://www.solovb.net/index.php/2009/01/06/estructura-select-case/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 20:17:24 +0000</pubDate>
		<dc:creator>Eliseo</dc:creator>
				<category><![CDATA[Estructuras de Control]]></category>
		<category><![CDATA[estructura]]></category>
		<category><![CDATA[Select Case]]></category>

		<guid isPermaLink="false">http://www.solovb.com/LF/?p=23</guid>
		<description><![CDATA[El Select Case permite elegir una de varias opciones/acciones.]]></description>
			<content:encoded><![CDATA[<p>El Select Case permite elegir una de varias opciones/acciones.</p>
<p>Supogamos que tenemos que realizar una tarea distinta deacuerdo al tipo de comprobante que se está procesando (factura, remito, nota de crédito, etc).</p>
<pre class="brush: vb; title: ;">
'El dato tipo de comprobante lo tomo de un
'comboBox llamado comboComprobante

Select Case comboComprobante.Text
    Case &quot;Factura&quot;
        MsgBox(&quot;Procesar Factura&quot;)
    Case &quot;Remito&quot;
        MsgBox(&quot;Procesar Remito&quot;)
    Case &quot;Nota de Crédito&quot;
        MsgBox(&quot;Procesar Nota de Crédito&quot;)
    Case &quot;Nota de Débito&quot;
        MsgBox(&quot;Procesar Nota de Débito&quot;)
    Case Else
        MsgBox(&quot;No procesar nada&quot;)
End Select
</pre>
<p>Otro buen ejemplo sería una function que reciba como parámetro el numero de mes y nos devuelva un string con el nombre</p>
<p>[Code lang="vbnet"]<br />
    Function nombreMes(ByVal numeroMes As Integer) As String<br />
        Dim mesSeleccionado As String = String.Empty<br />
        Select Case numeroMes<br />
            Case 1<br />
                mesSeleccionado = &#8220;Enero&#8221;<br />
            Case 2<br />
                mesSeleccionado = &#8220;Febrero&#8221;<br />
            Case 3<br />
                mesSeleccionado = &#8220;Marzo&#8221;<br />
            Case 4<br />
                mesSeleccionado = &#8220;Abril&#8221;<br />
            Case 5<br />
                mesSeleccionado = &#8220;Mayo&#8221;<br />
            Case 6<br />
                mesSeleccionado = &#8220;Junio&#8221;<br />
            Case 7<br />
                mesSeleccionado = &#8220;Julio&#8221;<br />
            Case 8<br />
                mesSeleccionado = &#8220;Agosto&#8221;<br />
            Case 9<br />
                mesSeleccionado = &#8220;Septiembre&#8221;<br />
            Case 10<br />
                mesSeleccionado = &#8220;Octubre&#8221;<br />
            Case 11<br />
                mesSeleccionado = &#8220;Noviembre&#8221;<br />
            Case 12<br />
                mesSeleccionado = &#8220;Diciembre&#8221;<br />
        End Select<br />
        Return mesSeleccionado<br />
    End Function<br />
[/Code]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.solovb.net/index.php/2009/01/06/estructura-select-case/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Estructura if then</title>
		<link>http://www.solovb.net/index.php/2009/01/06/estructura-if-then/</link>
		<comments>http://www.solovb.net/index.php/2009/01/06/estructura-if-then/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 20:16:14 +0000</pubDate>
		<dc:creator>Eliseo</dc:creator>
				<category><![CDATA[Estructuras de Control]]></category>
		<category><![CDATA[estructura]]></category>
		<category><![CDATA[If/Else/Then]]></category>

		<guid isPermaLink="false">http://www.solovb.com/LF/?p=21</guid>
		<description><![CDATA[La instrucción if se utiliza para decidir que acción realizar entre dos posibles opciones.
Tambien podemos usa if's anidados y asi romper la barrera de las dos opciones para decidir. Supongamos que tenemos que utilizar un semáfono (rojo, amarillo o verde) para resaltar un porcentaje de cumplimiento. Las opciones son tres y un if solo permite dos (verdadero o falso), usando if's anidades podemos afrontar este y muchos otros problemas.]]></description>
			<content:encoded><![CDATA[<p>La instrucción if se utiliza para decidir que acción realizar entre dos posibles opciones. La estructura es la siguiente:</p>
<p><strong>If </strong>&lt;comprabación lógica&gt; <strong>Then</strong><br />
         [Acciones a realizarse si se cumple la condición]<br />
<strong> Else</strong><br />
         [Acciones a realizarse sin no se cumple la condición]<br />
<strong> End If</strong></p>
<p>en el siguiente ejemplo suponemos que nos pasaron la edad de una persona en la variable     vEdad y debemos informar si esta persona es mayor de edad (21 años).</p>
<pre class="brush: vb; title: ;">

If vEdad &gt;= 21 Then
MsgBox(&quot;Es mayor de edad&quot;)
Else
MsgBox(&quot;Es menor de edad&quot;)
End If
</pre>
<p>para la asignación de valores a una variable se puede utilizar la instrucción iif     la cual se escribe en una sola línea:</p>
<p><strong>iif</strong>(&lt;comprobación lógica&gt;<strong>,</strong> Acción si se cumple<strong>,</strong> Acción si no se cumple)</p>
<p>supongamos que tengo un textbox llamado txtCantidad de donde tomo un valor numerico     y se lo asigno a una variable de tipo integer llamada vCantidad, pero si el textBox     está vacio la asignación dará error, entonces lo podemos solucionar con un iif.</p>
<pre class="brush: vb; title: ;">
Dim vCantidad As Integer
vCantidad = IIf(txtCantidad.Text = String.Empty, 0, txtCantidad.Text)
</pre>
<p>Tambien podemos usa if&#8217;s anidados y asi romper la barrera de las dos opciones para decidir. Supongamos que tenemos que utilizar un semáfono (rojo, amarillo o verde) para resaltar un porcentaje de cumplimiento. Las opciones son tres y un if solo permite dos (verdadero o falso), usando if&#8217;s anidades podemos afrontar este y muchos otros problemas.</p>
<pre class="brush: vb; title: ;">
'Tenemos un formulario (Form1) con un
'textbox (textbox1) el cual contiene un
'valor que representa el porcentaje de
'cumplimiento

'Si es mayor igual a 100 el color es verde
'si está entre 80 y 100 el color es amarillo
'y si esta debajo de 80 es rojo

If TextBox1.Text &amp;gt;= 100 Then
TextBox1.BackColor = Color.Green
Else
If TextBox1.Text &amp;gt;= 80 Then
TextBox1.BackColor = Color.Yellow
Else
TextBox1.BackColor = Color.Red
End If
End If
</pre>
<p>también podemos usar elseif como se muestra a continuación</p>
<pre class="brush: vb; title: ;">
If TextBox1.Text &amp;gt;= 100 Then
TextBox1.BackColor = Color.Green
ElseIf TextBox1.Text &amp;gt;= 80 Then
TextBox1.BackColor = Color.Yellow
Else
TextBox1.BackColor = Color.Red
End If
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.solovb.net/index.php/2009/01/06/estructura-if-then/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

