9 de abril de 2012

Suma VS

Para C# se ocupan dos textbox, un botón y un label para mostrar el resultado y queda así:


private void button1_Click(object sender, EventArgs e)
        {
            double total = Convert.ToInt32(textBox1.Text) + Convert.ToInt32(textBox2.Text);
            label1.Text = total.ToString();
        }


Para VB se ocupan dos textbox, un botón y un label para mostrar el resultado y queda así:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim total As Double = CInt(TextBox1.Text) + CInt(TextBox2.Text)
        Label1.Text = total
    End Sub


6 de abril de 2012

DateTimePicker VS

El control DateTimePicker permite seleccionar una fecha de manera conveniente. Cuando se accede a este objeto, muestra la fecha actual y, mediante flechas de desplazamiento que pertenecen al control, muestra calendarios que pueden recorrerse mes a mes y año a año.

Efectuando un clic sobre un número de día, el control se cierra, pudiéndose extraer este dato a través de la propiedad Text o la Propiedad Value, para que se pueda utilizar a posteriori.



dateTimePicker en VB

Ahora un ejemplo en VB cuyo form en vista diseño con labels, DateTimePicker, botones y textbox a continuación, el primer DateTimePicker tiene nombre datetimepicker1 y no esta habilitado es solo para mostrar como cambiar formato, el segundo DateTimePicker si se utiliza mas para cálculos con los botones correspondientes y tiene nombre DTP:




Ahora la aplicación ejecutándose y el código correspondiente, el primer DateTimePicker tiene nombre datetimepicker1 y no esta habilitado es solo para mostrar como cambiar formato, el segundo DateTimePicker si se utiliza mas para cálculos con los botones correspondientes y tiene nombre DTP:



Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        TextBox2.Text = DTP.Value.ToShortDateString
        TextBox1.Text = DTP.Value.ToLongDateString
        Label4.Text = "Hora formato corto es"
        Label6.Text = "Hora formato largo es"
        TextBox3.Text = DTP.Value.ToShortTimeString
        TextBox4.Text = DTP.Value.ToLongTimeString
        Label13.Text = Me.DTP.Value.Year
        Label14.Text = Me.DTP.Value.Month
        Label15.Text = Me.DTP.Value.Day
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DateTimePicker1.Format = DateTimePickerFormat.Custom
        DateTimePicker1.Value.ToString("yyyy/MM/dd")
        Label3.Text = "La fecha de hoy " & Date.Today
        Label5.Text = "La fecha y hora " & Date.Now

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim Edad As Int32
        Dim Diferencia As TimeSpan
        Diferencia = Today.Subtract(DTP.Value.ToShortDateString)
        Edad = Fix(Diferencia.TotalDays / 365.25)
        TxtDias.Text() = Diferencia.TotalDays.ToString
        TxtHoras.Text() = Diferencia.TotalHours.ToString()
        TxtMinutos.Text() = Diferencia.TotalMinutes
        TxtEdad.Text() = Edad.ToString

        Dim Fnac As Date = DTP.Value.ToShortDateString
        Select Case Fnac.DayOfWeek
            Case DayOfWeek.Monday
                TxtDiaNac.Text = "Lunes"
            Case DayOfWeek.Tuesday
                TxtDiaNac.Text = "Martes"
            Case DayOfWeek.Wednesday
                TxtDiaNac.Text = "Mi‚rcoles"
            Case DayOfWeek.Thursday
                TxtDiaNac.Text = "Jueves"
            Case DayOfWeek.Friday
                TxtDiaNac.Text = "Viernes"
            Case DayOfWeek.Saturday
                TxtDiaNac.Text = "Sabado"
            Case DayOfWeek.Sunday
                TxtDiaNac.Text = "Domingo"
        End Select

    End Sub
End Class

También puedes usar
edad = Fix((DateDiff(DateInterval.Day, DateTimePicker1.Value, Now.Date)) / 365) & " años"




dateTimePicker en C#

Ahora un ejemplo en C# cuyo form en vista diseño con labels, DateTimePicker, botones y textbox a continuación, el primer DateTimePicker tiene nombre datetimepicker1 y no esta habilitado es solo para mostrar como cambiar formato, el segundo DateTimePicker si se utiliza mas para cálculos con los botones correspondientes y tiene nombre DTP:



Ahora la aplicación ejecutándose y el código correspondiente, el primer DateTimePicker tiene nombre datetimepicker1 y no esta habilitado es solo para mostrar como cambiar formato, el segundo DateTimePicker si se utiliza mas para cálculos con los botones correspondientes y tiene nombre DTP:



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace DateTimePicker_C
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            dateTimePicker1.Value.ToString("yyyy/MM/dd");
            label1.Text = "La fecha de hoy es   " + System.DateTime.Today;
            label2.Text = "La fecha y hora es   " + System.DateTime.Now;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            textBox2.Text = DTP.Value.ToShortDateString();
            textBox3.Text = DTP.Value.ToLongDateString();
            textBox1.Text = DTP.Value.ToShortTimeString();
            textBox4.Text = DTP.Value.ToLongTimeString();
            textBox7.Text=DTP.Value.Day.ToString();
            textBox5.Text=DTP.Value.Month.ToString();
            textBox6.Text = DTP.Value.Year.ToString();
        }

        private void button2_Click(object sender, EventArgs e)
        {

         TimeSpan Diferencia = DateTime.Today.Subtract(DTP.Value.Date);
            int Edad = (int)(Diferencia.TotalDays / 365.25);
            TxtDias.Text = Diferencia.TotalDays.ToString();
            TxtHoras.Text = Diferencia.TotalHours.ToString();
            TxtMinutos.Text = Diferencia.TotalMinutes.ToString();
            TxtEdad.Text = Edad.ToString();

            System.DateTime Fnac = DTP.Value.Date;
            switch (Fnac.DayOfWeek)
            {
                case DayOfWeek.Monday:
                    TxtDiaNac.Text = "Lunes";
                    break;
                case DayOfWeek.Tuesday:
                    TxtDiaNac.Text = "Martes";
                    break;
                case DayOfWeek.Wednesday:
                    TxtDiaNac.Text = "Miercoles";
                    break;
                case DayOfWeek.Thursday:
                    TxtDiaNac.Text = "Jueves";
                    break;
                case DayOfWeek.Friday:
                    TxtDiaNac.Text = "Viernes";
                    break;
                case DayOfWeek.Saturday:
                    TxtDiaNac.Text = "Sabado";
                    break;
                case DayOfWeek.Sunday:
                    TxtDiaNac.Text = "Domingo";
                    break;
            }
        }
     }
  }


Nota: DTP.Value ya es DateTime, no necesitas convertirlo a string, si solo quieres la fecha sin tener en cuenta la hota usa DTP.Value.Date.






28 de marzo de 2012

Gambas2 El Visual Basic De Linux (UBUNTU)



Gambas es un lenguaje de programación líbre derivado de BASIC (de ahí que Gambas quiera decir Gambas Almost Means Basic).
Es distribuido con licencia GNU GPL. Cabe destacar que presenta ciertas similitudes conJava ya que en la ejecución de cualquier aplicación, se requiere un conjunto de librerías interprete previamente instaladas (Gambas Runtime) que entiendan el bytecode de las aplicaciones desarrolladas y lo conviertan en código ejecutable por el computador. Por otro lado, a diferencia de Java, no se experimentan ralentizaciones y es posible desarrollar grandes aplicaciones en poco tiempo.

Permite crear formularios con botones de comandos, cuadros de texto y muchos otros controles y enlazarlos abases de datos como MySQL, PostgreSQL o SQLite además de facilitar la creación de aplicaciones muy diversas como videojuegos (utilizando OpenGL), aplicaciones para dispositivos móviles (en desarrollo pero muy avanzado), aplicaciones de red (con manejo avanzado de protocolos HTTP, FTP, SMTP, DNS), entre otras.

Gambas puedes bajarlo de los repositorios de ubuntu, en caso que no ocupes ubuntu puedes descargarlo de la siguiente liga: http://gambas.sourceforge.net/en/main.html

En la sección “Descarga De Manuales” puedes descargar un tutorial muy bueno sobre este hermoso sistema orientado a objetos para programar.

26 de marzo de 2012

Ruta BD access desde directorio aplicación VS

C#


string rutaBD = Application.StartupPath + "\\bd.mdb";
            con = new conexionOleDb(rutaBD);


VB

Dim rutaBD As String = Application.StartupPath + "\bd.mdb"
        con = New conexionOleDb(rutaBD)


Pausa en aplicación VS

Muchas veces necesitamos que nuestra aplicación quede en modo espera o pausada para realizar un proceso externo y no tengamos problemas de sincronización, por ejemplo, cuando copiamos ficheros necesitamos que la aplicación se detenga unos segundos y después continuar el código. Sólo con una línea podemos pausar la aplicación durante el tiempo que queramos:

VB
System.Threading.Thread.Sleep(1000)

C#
System.Threading.Thread.Sleep(1000);


El parámetro es el tiempo medido en milisegundos (1000=1 segundo)

Ejecutar aplicaciones externas a VS



En este Form se cargan programas externos a nuestra aplicación, el Form para VB.NET queda así:


Public Class Form1

    Private Sub BNotepad_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BNotepad.Click
        Process.Start("C:\Windows\System32\notepad.exe")
    End Sub

    Private Sub BConsola_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BConsola.Click
        Process.Start("C:\Windows\System32\cmd.exe")
    End Sub

    Private Sub BCalculadora_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BCalculadora.Click
        Process.Start("C:\Windows\System32\calc.exe")
    End Sub

    Private Sub BPowerpoint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BPowerpoint.Click
        Process.Start("C:\Archivos de programa\Microsoft Office\Office14\POWERPNT.EXE")
    End Sub

    Private Sub BOutlook_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BOutlook.Click
        Process.Start("C:\Archivos de programa\Microsoft Office\Office14\OUTLOOK.EXE")
    End Sub

    Private Sub BWord_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BWord.Click
        Process.Start("C:\Archivos de programa\Microsoft Office\Office14\WINWORD.EXE")
    End Sub

    Private Sub BExcel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BExcel.Click
        Process.Start("C:\Archivos de programa\Microsoft Office\Office14\EXCEL.EXE")
    End Sub
End Class





Para C# solo agreguen la directiva  using System.Diagnostics;



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Diagnostics;


namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void bNotepad_Click(object sender, EventArgs e)
        {
             Process.Start(@"C:\\Windows\\System32\\notepad.exe");
        }

        private void bConsola_Click(object sender, EventArgs e)
        {
            Process.Start(@"C:\Windows\System32\cmd.exe");
        }

        private void bCalculadora_Click(object sender, EventArgs e)
        {
             Process.Start(@"C:\Windows\System32\calc.exe");
        }

        private void bPowerpoint_Click(object sender, EventArgs e)
        {
        Process.Start(@"C:\Archivos de programa\Microsoft Office\Office14\POWERPNT.EXE");
        }

        private void bOutlook_Click(object sender, EventArgs e)
        {
            Process.Start(@"C:\Archivos de programa\Microsoft Office\Office14\OUTLOOK.EXE");
        }

        private void bWord_Click(object sender, EventArgs e)
        {
         Process.Start(@"C:\Archivos de programa\Microsoft Office\Office14\WINWORD.EXE");
        }

        private void bExcel_Click(object sender, EventArgs e)
        {
           Process.Start(@"C:\Archivos de programa\Microsoft Office\Office14\EXCEL.EXE");
        }   
        }}




  





Comprobar conexión a internet desde VS


Para conocer si hay conexión a Internet en caso tengamos un WebBrowser en la aplicación, para VB.NET se puede hacer esto:


Imports System.Net
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        compruebaConexion()
    End Sub

    Public Function compruebaConexion() As Boolean
        Dim request As WebRequest
        Dim response As WebResponse
        Dim Url As New Uri("http://www.pabletoreto.blogspot.com")
      
        Try
            'Creamos la request
            request = System.Net.WebRequest.Create(Url)
            'POnemos un tiempo limite
            request.Timeout = 5000
            'ejecutamos la request
            response = request.GetResponse
            response.Close()
            request = Nothing
            Label2.Text = System.Environment.MachineName & "si hay conexion a internet"
            Return True
        Catch ex As Exception
            'si ocurre un error, devolvemos error
            request = Nothing
            Label2.Text = "No hay conexion a internet"
            Return False
        End Try
    End Function
 End Class





Para conocer si hay conexión a Internet en caso tengamos un WebBrowser en la aplicación, para C# se puede hacer esto:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;

namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            compruebaConexion();
        }

        public bool compruebaConexion()
        {
            WebRequest request = null;
            WebResponse response = null;
            Uri Url = new Uri("http://www.pabletoreto.blogspot.com");

            try
            {
                //Creamos la request
                request = System.Net.WebRequest.Create(Url);
                //POnemos un tiempo limite
                request.Timeout = 5000;
                //ejecutamos la request
                response = request.GetResponse();
                response.Close();
                request = null;
                label1.Text = System.Environment.MachineName + "si hay conexion a internet";
                return true;
            }
            catch (Exception ex)
            {
                //si ocurre un error, devolvemos error
                request = null;
                label1.Text = "No hay conexion a internet";
                return false;
            }
        }
   
    }


}