Fragmentos de código [VB 2003]


Formulario centrado en la pantalla

Private Sub frmPlayer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   ' posición x.y del formulario: centrado en la pantalla
   Me.Left = (Screen.PrimaryScreen.WorkingArea.Width - Me.Width) \ 2
   Me.Top = (Screen.PrimaryScreen.WorkingArea.Height - Me.Height) \ 2
End Sub

Escribir en un archivo de texto

' para escribir en un archivo de texto
Private objEscritor As StreamWriter
'
Private Sub frmPlayer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   ' el archivo se llama Lista.txt y se crea en el directorio temporal,
   ' se anotan el día y la hora en que arranca el programa,
   ' el constructor de StreamWriter lleva un 2º parámetro:
   '- False --> lo que se escribe substituye a lo que ya está escrito
   '- True --> lo que se escribe se añade al final de lo que ya está escrito
   objEscritor = New StreamWriter(Environment.GetEnvironmentVariable("TEMP") & "\Lista.txt", True)
   objEscritor.WriteLine("")
   objEscritor.WriteLine("Día: " & Now.ToShortDateString & " - Hora: " & Now.ToShortTimeString)
   objEscritor.Close()
End Sub

Recortar una ruta al nombre de archivo

Private Sub abrirArchivo() ' procedimiento para buscar y abrir un archivo
   ' presentar al usuario un cuadro de diálogo
   Dim openFile As New OpenFileDialog
   ' si elegimos algún archivo
   If openFile.ShowDialog() = Windows.Forms.DialogResult.OK Then
     ' strPath = ruta a la carpeta que contiene el archivo (hasta la última aparición de \)
     ' (es la ruta sin el nombre de archivo)
     Dim i As Integer ' índice de la última aparición de \
     i = openFile.FileName.LastIndexOf("\")
     strPath = openFile.FileName.Remove(i, openFile.FileName.Length - i)
     ' strArchivo = ruta a la carpeta que contiene el archivo a partir de la última aparición de \
     '(es el nombre de archivo sin la ruta)
     strArchivo = openFile.FileName.Substring(i + 1)
   End If
End Sub

Detectar pulsaciones de teclas

Private Sub frmPlayer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   ' la propiedad KeyPreview especifica si el evento KeyPress de un formulario intercepta
   ' los eventos KeyPress de los controles o del formulario mismo;
   ' está disponible en tiempo de diseño y en tiempo de ejecución;
   ' KeyPreview se utiliza para permitir que el formulario controle los eventos KeyPress
   ' antes de que el control activo los procese;
   ' si un formulario no tiene controles visibles y activados
   ' recibe automáticamente todos los eventos de teclado
   Me.KeyPreview = True
End Sub
' KeyDown - ocurre cuando el usuario pulsa una tecla
' KeyUp - ocurre cuando el usuario suelta una tecla pulsada
' KeyPress - ocurre cuando el usuario pulsa y suelta una tecla
Private Sub frmPlayer_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
   Select Case e.KeyValue.ToString
     Case Windows.Forms.Keys.S ' captura s minúscula y S mayúscula
       ' ...
   End Select
End Sub
Private Sub frmPlayer_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
   Select Case e.KeyChar.ToString
     Case "s" ' captura solamente s minúscula
       ' ...
   End Select
End Sub
' códigos ASCII: S = 83, s = 115
Private Sub frmPlayer_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
   If e.KeyChar = ChrW(115) OrElse e.KeyChar = ChrW(83) Then ' captura s minúscula y S mayúscula
     ' ...
   End If
End Sub
Private Sub frmPlayer_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
   If Char.IsLetter("s") = True Then ' captura s minúscula y S mayúscula
     ' ...
   End If
End Sub
Private Sub frmPlayer_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
   If e.KeyChar = Convert.ToChar(Keys.S) Then ' captura solamente S mayúscula
     ' ...
   End If
End Sub
Private Sub frmPlayer_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp
   Select Case e.KeyValue.ToString
     Case Windows.Forms.Keys.S ' captura s minúscula y S mayúscula
       ' ...
   End Select
End Sub