Posteado por: irodriguezm | febrero 17, 2012

Marcador deportivo en visual basic.net (Básico)

Hola amigos, se acerca el juegos de las estrella de la NBA asi que vamos a hacer paso a paso un proyecto de marcado virtual, las carecteristicas que debe tener son las siguientes:

  • Pantalla completa y que se maneje a través de teclas sin ocupar teclado
  • Debe tener un cronometro el cual al llegar a cero debe avisar mediante un sonido

vamos con los pasos,
1.- primero creamos un nuevo proyecto en visual basic (windows form) en mi caso se llama basquetNet
2.- Agregamos un nuevo Form el cual se llamara FormMarcador, en dicho formulario inresaremos los siguientes controles:
textbox (Nombre: TxtAccion) Registrara las teclas pulsadas le damos en el orden 1
textbox (Nombre: PuntoLocal) registrara los puntos del equipo local, readonly = true
textbox (Nombre: PuntoVisita) registrara los puntos del equipo visita, readonly = true
textbox (Nombre: TxtTiempo) registrara el tiempo, readonly = true
Timer(Nombre: TimerTick) servira para el tiempo
AxWindowsMediaPlayer1(Nombre: AxWindowsMediaPlayer1) nos servira para reproducir un sonido cuando termina el tiempo
cambiamos las propiedades de nuestro form a WindowState a Maximized para que se vea en toda la pantalla y le damos un color negro al fondo y algún tamaño y color llamativo a los textbox que ingresamos anteriormente.

eso serian los controles básicos, luego le vamos a ingresar un poco más de funcionalidad de nuestro marcador

el codigo seria el sgte:

Public Class FormMarcador
    Private hora As Integer = 0
    Private minuto As Integer = 0
    Private segundo As Integer = 0
    Private milisegundo As Integer = 0
    Private _ticks As Int64
    Private _tmr As Timer
    Private bandera_tiempo As Integer
    Private Sub FormMarcador_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Periodo.Text = 0
        Me.FaltasLocal.Text = 0
        Me.PuntoVisita.Text = 0
        Me.PuntoLocal.Text = 0
        AxWindowsMediaPlayer1.Visible = False
        bandera_tiempo = 1
        _tmr = New Timer
        AddHandler _tmr.Tick, AddressOf TimerTick
        _tmr.Interval = 1000
        TxtTiempo.Text = "00:10:00"
    End Sub
    Private Sub TimerTick(ByVal sender As Object, ByVal e As EventArgs)
        _ticks -= 10000000
        Dim time1 As DateTime = New DateTime(_ticks)
        If _ticks = 0 Then
            _tmr.Stop()
            AxWindowsMediaPlayer1.URL = (My.Application.Info.DirectoryPath + "\efectoalarrma.mp3")
        End If
        TxtTiempo.Text = time1.ToString("T")
    End Sub
' si persionamos una tecla 
    Private Sub TxtAccion_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TxtAccion.KeyDown
       
        If e.KeyData = Keys.L Then 'tecla L agrega punto a local
            Me.PuntoLocal.Text = Val(Me.PuntoLocal.Text) + 1
        ElseIf e.KeyData = Keys.F1 Then ' tecla F1 nos muestra un form de ayuda con las teclas y sus funciones
            FormAyuda.ShowDialog()
       ElseIf e.KeyData = Keys.V Then 'tecla V agrega punto a visita
            Me.PuntoVisita.Text = Val(Me.PuntoVisita.Text) + 1

         ElseIf e.KeyData = Keys.Space Then ' definimos la tecla espacio para que suene la chcicharra
            AxWindowsMediaPlayer1.URL = (My.Application.Info.DirectoryPath + "\efectoalarrma.mp3")
        ElseIf e.KeyData = Keys.Enter And bandera_tiempo = 1 Then
            _ticks = 1 * 600 * 10000000L

            _tmr.Start()
             bandera_tiempo = 2
'la tecla enter sera la encargada del tiempo tendra dos opciones (iniciar y pausar)
        ElseIf e.KeyData = Keys.Enter And bandera_tiempo = 2 Then
            _tmr.Stop()
            bandera_tiempo = 3

        ElseIf e.KeyData = Keys.Enter And bandera_tiempo = 3 Then
            _tmr.Start()
             bandera_tiempo = 2

        ElseIf e.KeyData = Keys.Control + Keys.X Then ' Tecla control + x cierra aplicacion
            Dim res As String
            res = MessageBox.Show("Esta seguro que desea cerra aplicación", "Cerrar aplicación", MessageBoxButtons.YesNo)
            If res = Windows.Forms.DialogResult.Yes Then
                Me.Close()
            End If
        End If
    End Sub

End Class

Nota: el archivode audio debe estar en el directorio de la aplicación, el componente AxWindowsMediaPlayer1 se debe agregar como un nuevo control, falta el formulario FormAyuda que basicamente muestra las funciones de las teclas, atento a cualquier comentario

Saludos

Posteado por: irodriguezm | diciembre 25, 2011

Disponibilidad de usuarios en PHP


Hola amigos, tengo un video donde se ve lo que se puede realizar con php ajax para comprobar la existencia de un usuario, ahora vamos a explicar en detalle como hacerlo, primero el video

Nota: este codigo lo encontre en internet, le modifique algunos puntos, asi que va el credito a quien realizo gran parte de este codigo.
vamos a lo nuestro, primero creamos una tabla en nuestra base de datos con nombre usuarios y dos campos id y usuario tenemos nuestro formulario.php con un campo tipo text y nombre txt_username, este es la pag. donde se muestra al usuario el campo a ingresar y donde se obtiene la respuesta si el nombre de usuario esta disponible o no, el cod. completo seria:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="javascript/ajaxformulario.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
 			.ok{
	background-color:#99FF99;
	font-family: Calibri;
	font-weight: bold;
	color: #999999;
	font-size:12px;
}
.error{
	background-color:#FFAAAA;
	font-family: Calibri;
	font-weight: bold;
	color: #999999;
	font-size:12px;
}
.form_alert_msg {
        font-size: 14px;
        font-weight: Calibri;
        color: #006666;
        display:inline;
        background-color: #FFFFCC;
        padding: 2px 5px;
        margin-left: 5px;
        border-top: 1px solid #D4E0EE;
        border-right: 1px solid #D4E0EE;
        border-bottom: 1px solid #D4E0EE;
        border-left: 1px solid #D4E0EE;
}
    </style>
</head>
<body>
<body>
   <div id="estadoUser"></div>
  <form name="myform" id="myform" method="post" onSubmit="return checkForm(this);" action="">
    
    <div><label >Usuario:</label>
      <input name="txt_username" type="text" id="txt_username" onblur="checkField(this);" onkeyup="javascript:ComprobarUsuario('./comprobarUser.php','estadoUser')" size="12" maxlength="12" />
    </div>   
  </form>
	
</body>
</html>

Podemos observar que se agregar un archivo javascript y que además se asigna mediante css un color cuando esta ok y otro cuando hay error (verde y rojo en nuestro caso)

primero hacemos la conexion a nuestra base de datos, dejo el ejemplo y los datos que deberian modificar conexion.php

<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost";// definir host 
$bd_usuario = "root";  // definir usuario
$bd_password = ""; // definir password
$bd_base = "prueba";  // definir base de datos
$con = mysql_connect($bd_host, $bd_usuario, $bd_password); 
mysql_select_db($bd_base, $con); 
?>

ahora veremos el codig. del archivo comprobarUser.php, este archivo es el que se conecta a nuestra base de datos y comprueba la existencia o no del usuario mostrando un msje en cada caso

<?php 
require('conexion.php');

$colname_rs_user = "-1";
if (isset($_POST['username'])) {
  $colname_rs_user = $_POST['username'];
}
//mysql_select_db($database_conn, $conn);
$query_rs_user = sprintf("SELECT * FROM usuarios WHERE usuario = '%s'",$colname_rs_user);
$rs_user = mysql_query($query_rs_user, $con) or die(mysql_error());
$row_rs_user = mysql_fetch_assoc($rs_user);
$totalRows_rs_user = mysql_num_rows($rs_user);
if($totalRows_rs_user == 0)
{
	echo '<div align="center" class="ok">Nombre de usuario disponible';
}
else{
	echo '<div align="center" class="error">Nombre de usuario Ocupado';
}
?>
<?php 
mysql_free_result($rs_user);
?>

ahora creamos el directorio javascript, con el archivo ajaxformulario.js

function getXMLHttpRequest(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (E) {
			xmlhttp = false;
  		}
	}

	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function TraerPagina(datos,contenedor){
	divResultado = document.getElementById(contenedor);
	ajax=getXMLHttpRequest();
	ajax.open("GET", datos);
	ajax.onreadystatechange=function(){
	if(ajax.readyState==1)
		{divLoader.innerHTML='<br/><br/><br/><center><img widht="50" height="50" src="./bigrotation2.gif"/><br/>Cargando...</center>'}
		else{
			if(ajax.readyState==4){divResultado.innerHTML=ajax.responseText;divLoader.innerHTML=''}
			}
		}
	ajax.send(null)
}

function ComprobarUsuario(datos,contenedor){
	divResultado = document.getElementById(contenedor);
	
	username_=document.myform.txt_username.value;
	
	ajax=getXMLHttpRequest();
	ajax.open("POST", datos);
	ajax.onreadystatechange=function(){
	if(ajax.readyState==1)
		{divResultado.innerHTML='<br/><br/><br/><center><img widht="50" height="50" src="../img/bigrotation2.gif"/><br/>Cargando...</center>'}
		else{
			if(ajax.readyState==4)
			{divResultado.innerHTML=ajax.responseText;}
			}
		}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("username="+username_);
}

Bueno eso seria, ahora llenen la tabla con algún usuario y prueban que tal funciona

saludos a todos

Posteado por: irodriguezm | septiembre 21, 2011

Consulta campo de fecha (fecha corta) visual basic.net con access

Buenas amigos, no escribia nada hace bastante tiempo, les traigo un dato bastante interesante y que me hizo estar varias horas tratando de buscar una solución, el problema es el siguiente: necesito ingresar y consultar una base de datos access donde se encuentra una tabla con un campo Fecha/Hora con formato de fecha corta a través de mi sistema creado en visual basic.net.

bueno vamos por paso, agregamos un DateTimePicker, un botón y una DataGridView.
por supuesto que una base de datos access y una tabla con un campo Fecha/Hora

la consulta sería de la sgte forma:

 da = New OleDb.OleDbDataAdapter("SELECT * FROM tutabla WHERE AND CDate(fecha) = '" & Format(DateTimePicker1.Value, "dd-MM-yyyy") & "'", conexion) 

luego presentamos los datos en nuestra grilla

Dim ds As New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)

eso seria amigos, no sin antes agradecer al gran foro Msdn

Posteado por: irodriguezm | julio 29, 2011

Encuesta

Posteado por: irodriguezm | febrero 4, 2011

Conectar visual.net con access y sql


Hola amigos, hace un tiempo atrás les comente la forma de conectarnos desde visual.net a una base de datos mysql, bueno hoy traigo dos tipos de conexion a sql y a access

primero sql, agregamos lo siguiente
Imports System.Data.SqlClient
declaramos myConn

Private myConn As SqlConnection

Código:

      	
        myConn = New SqlConnection("Data Source=SERVIDOR;Initial Catalog=BD;User ID=USUARIO;Password=PASS")
     

Access, agregamos lo siguiente
Imports System.Data.OleDb

declaramos
Private myConn As OleDbConnection

 myConn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ruta de base de datos; User Id=;Password=;")

saludos

Posteado por: irodriguezm | enero 21, 2011

Email desde VB.Net

Hola amigos, hoy traigo algo sumamente necesario para cualquier programador, busque mucha información en internet y este codigo fue el que se me funciono de mejor forma.
bueno lo primero es crear un nuevo form, agregamos 2 textbox (TextAsunto y TextPara), 1 RichTextBox1, RadioButton1, RadioButton2, RadioButton3 (q aunque no es necesario, servira para ver la funcionalidad de prioridad) y obviamente un botón.
agregamos
la referencia a System.web

y ponemos en nuestro codigo

Imports System.Net.Mail
Dim miCorreo As New System.Net.Mail.MailMessage

el codigo para el botón:

Private Sub BtnEnviaEmail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnEnviaEmail.Click
        If Me.TextAsunto.Text = "" Then
            MsgBox("Ingrese el asunto")
        ElseIf Me.TextPara.Text = "" Then
            MsgBox("Ingrese un destinatario")
        ElseIf Me.RichTextBox1.Text = "" Then
            MsgBox("Ingrese un Mensaje")
        Else

            Dim correo As New MailMessage
            correo.From = New MailAddress(Me.TextDe.Text)
            correo.To.Add(Me.TextPara.Text)
            'Asunto
            correo.Subject = Me.TextAsunto.Text


            If Me.RadioButton1.Checked = True Then
                correo.Priority = MailPriority.High
            ElseIf Me.RadioButton2.Checked = True Then
                correo.Priority = MailPriority.Normal
            ElseIf Me.RadioButton3.Checked = True Then
                correo.Priority = MailPriority.Low

            End If


            'Cuerpo del correo
            If Me.CheckBox1.Checked = True Then
                correo.Body = Me.RichTextBox1.Text & vbCrLf & "" & vbCrLf & "Tu nombre" & vbCrLf & "Tu Institución" & vbCrLf & "Tu Fono"
            Else
                correo.Body = Me.RichTextBox1.Text
            End If

            'Mostrar como HTML
            correo.IsBodyHtml = False
            'Prioridad de el correo
            correo.Priority = MailPriority.Normal
            'acto seguido le indicamos cual servidor utilizaremos
            'aquì usaremos por default a gmail y su puerto SMTP
            'pero en una futura entrega les mostraré como hacerlo
            'cn cualquier servidor

            Dim smtp As New SmtpClient()

            smtp.Host = "xxx.xxx.x.x"
            ' puerto de correo 25
            smtp.Port = 25
            smtp.Credentials = New System.Net.NetworkCredential("xxxxxx", "xxxxx")
            smtp.EnableSsl = False
            Try


                'listo tenemos la estructura de nuestro mensaje armada ahora enviemosla a nuestro destinatario y listo
                smtp.Send(correo)
                MsgBox("Mensaje enviado satisfactoriamente")

               
                Me.Close()

            Catch ex As Exception

                MsgBox("ERROR: " & ex.Message)

            End Try
        End If
    End Sub
  

algunas a considerar: el puerto, el host y las credenciales (usuario y password)

y eso seria saludos

Posteado por: irodriguezm | diciembre 23, 2010

Funciones de comparación en php

Hola amigos aca escribiendo nuevamente, estoy leyendo un manual bastante interesante sobre php y han aparacido bastante tips, que poco a poco voy a ir compartiendo.

function similar_text() Básicamente lo que hace esta función es comparar dos string y devuelve el número de caracteres iguales.

function levenshtein() esta función devuelve el número de caracteres que hay que sustituir, insertar o borrar, para igualar los dos string.

function strlen() esta función nos muestra el número de carateres de un string.

str_word_count() esta función nos muestra el número de palabras.

<?
// function similar_text()
echo similar_text("casa", "caña");



//function levenshtein()
echo levenshtein("casa", "casi");

//function strlen()
echo strlen("Ignacio");

//str_word_count()
echo str_word_count("Ignacio andres");
?>

Salidas de los ejemplos:

function similar_text(): 3
function levenshtein(): 1
function strlen(): 7
str_word_count(): 2

Saludos

Posteado por: irodriguezm | noviembre 23, 2010

Capacitación y entrenamientos Elearning de tecnologías Microsoft

Hace un tiempo les hable de una excelente forma de poder acceder a excelente material y probar nuestro conocimiento en Microsoft Virtual Academy MVA, bueno hoy les voy a hablar de tres nuevas posibilidades ojala les ayuden tanto como a mi:

1.- Microsoft Learning: http://www.microsoft.com/learning/en/us/default.aspx (Ahí hay montón de entrenamientos, gratuitos y pagados. Libros y cursos)

2.- PLC: Partner Learning Center: https://partner.microsoft.com/chile/40056112 (Aquí hay mucho material gratuito, pero para acceder a ello, deben inscribirse al sitio de Microsoft en www.microsoftcom/chile/socios. La mayoría es gratuito y pueden filtrar según lo que necesiten.)

3. MPN: Microsoft Partner Network: https://partner.microsoft.com/chile/formacioneventos
Acá encuentran el resumen de los entrenamientos y otros temas específicos

ojala les sirva, saludos

Posteado por: irodriguezm | noviembre 18, 2010

Descarga Internet Explorer 9, Personaliza tu sitio y gana


Se acerca las fiestas de pascua y nunca es malo un regalito, menos una Xbox 360 Arcade Slim. Por esta razón les traigo esta información.

las bases del concuro: aca
para descargar IE9: aca
ver todas las opciones de perzonalización: aca

Concurso solo para el territorio chileno y para mayores de 18 años

Saludos

Posteado por: irodriguezm | noviembre 14, 2010

Detectar web o dispositivo móvil utilizando PHP o ASP


Cada día son más las personas que ocupan su celular, PDA, Smartphone, etc. para ingresar a internet, una de las dificultades que se presenta cuando se ingresa desde un dispositivo movil es la resolución de las páginas, o el excesivo tiempo de carga. es por eso que siempre me he preguntado ¿como algunos sitios detectan si uno ingresa a traves de un pc o de un celular/PDA?.
Bueno la respuesta la encontre en Ribosomatic donde existe un muy buen codigo en PHP (lo probe y funciona al 100%) y otro en asp (no lo he probado), asi que espero que les sirva saludos

Older Posts »

Categorías

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.