Você está na página 1de 14

INSTITUTO TECNOLGICO SUPERIOR DE LERDO

VISUAL BASIC Y C # Ingeniero Ricardo Bustamante Gonzlez

Alumna:

ROCIO MARISOL DE LA TORRE GONZALEZ

Febrero del 2012 Instituto Tecnolgico Superior de Lerdo

PROYECTO EN VISUAL BASIC


Objetivo general Aprender a manejar este nuevo lenguaje que se encuentra en Visual Studio; dando a conocer el programa siguiente desarrollndolo en un registro de alumnos con sus respectivas calificaciones. Material: *3 menu *9 textBox *10 Labels *7 Buttons Interfaz Grafica del Programa

Los tres menus que se mencionarion en materiales, son los que dicen Archivo, Edicion y Buscar, en el cual al desplazar el mause en cualquiera de ellos se despliega y en el men de Archivo aparece:

Continuando con los mens, ahora el de Edicin:

Y por ultimo men es el de Buscar:

Es por eso que se elaboro de esta manera el programa, y por si escriben un dato mal a la hora de crear un registro, solamente se oprime el botn pequeo del lado de la caja de texto marcado con una cruz:

BOTON PARA BORRAR

INDICA CUANTAS PERSONAS SE HAN REGISTRADO

CODIGO EN VISUAL BASIC


Form1
Imports System.IO Public Class Form1 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick If Timer1.Interval = 2000 Then Timer1.Enabled = False Me.Hide() Form2.Show() End If End Sub Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing

End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Directory.Exists("C:\Registro") Then If File.Exists("C:\Registro\registro.txt") Then Else : File.Create("C:\Registro\registro.txt") MessageBox.Show("El directorio fue creado exitosamente.", "Aviso")//este mensaje aparecer cuando se haya creado el directorio con un buen resultado End If//indica fin del ciclo if Else Directory.CreateDirectory("C:\Registro")//se crea un directorio File.Create("C:\Registro\registro.txt") MessageBox.Show("El directorio fue creado exitosamente.", "Aviso") End If End Sub End Class

Form2
Imports System.IO Public Class Form2// el siguiente codigo se encuentra en el Segundo form, en el cual se declaran dos variables una con el nombre a y otra con el nombre bol Dim a As New Integer//esta variable el tipo de dato que contiene es entero Dim bol As New Boolean//sin embargo el tipo de dato es boleano

Private Sub Form2_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing Application.Exit()//para cerrar el form2, tambien cerrando la base de datos. End Sub

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim flujo As New FileStream("c:\Registro\registro.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite)//en el cual como se ha observado anteriormente que se usa la palabra Dim, es una instruccion en ella se usa para declarer variables de memoria. Declarando otra variable para crear un registro y si ya es creado que se pueda abrir y por ultimo poder escribir. Dim datos As New BinaryReader(flujo)//la variable datos que en ella se guarde lo que hay de datos para que sean leeidos.

If datos.PeekChar <> -1 Then//si los datos son desiguales a menos uno, entonces entra donde lo que se guardo en datos se guardara en a, con un tamao de 70 caracteres siendo enteros. a = CType(Math.Ceiling(flujo.Length / 70), Integer) End If ToolStripLabel1.Text = "Personas registradas: " + a.ToString() End Sub//en la etiqueta 1 aparecera una cadena diciendo cuantas personas han sido registradas en ese momento. Private Sub SalirToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SalirToolStripMenuItem.Click Application.Exit()//dentro del form se encuentra un meno, en el cual solo es para salir de la ejecucion. End Sub Private Sub NuevoToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NuevoToolStripMenuItem1.Click limpiar()//es para limpiar como su nombre lo dice PictureBox1.Visible = False// cuando se limpia la imagen no se vera ya que esta en falso Panel1.Enabled = True// siendo los dos paneles y el boton para ingresar, en el cual los demas textbox o cajas de texto estaran disponibles para ingresar nuevos registros Panel1.Visible = True Button6.Visible = True Button8.Visible = False TextBox1.Enabled = True TextBox2.Enabled = True TextBox4.Enabled = True TextBox5.Enabled = True TextBox6.Enabled = True TextBox7.Enabled = True TextBox8.Enabled = True TextBox9.Enabled = True End Sub Private Sub PorNombreToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PorNombreToolStripMenuItem.Click limpiar()//es para limpiar , este menu es para buscar el alumno por el nombre, es pore so que la caja de texto numero tres esta visible para escribir el nombre y asi que sea buscado: siendo los demas en falso para no oprimir lo escribir PictureBox1.Visible = False Panel1.Visible = True Panel1.Enabled=true TextBox1.Enabled = False

TextBox2.Enabled = False TextBox3.Enabled = True TextBox4.Enabled = False TextBox5.Enabled = False TextBox6.Enabled = False TextBox7.Enabled = False TextBox8.Enabled = False TextBox9.Enabled = False Button6.Visible = False Button8.Visible = True End Sub Private Sub TextBox4_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox8.KeyPress, TextBox7.KeyPress, TextBox6.KeyPress, TextBox5.KeyPress, TextBox4.KeyPress If Not Char.IsNumber(e.KeyChar) Then e.Handled = True End If End Sub Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click TextBox4.Clear()//para cerrar End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click TextBox5.Clear()//para cerrar End Sub Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click TextBox6.Clear()//para cerrar End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox7.Clear()//para cerrar End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click TextBox8.Clear()//para cerrar End Sub Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click Dim sw As New StreamWriter("c:\Registro\registro.txt", True) sw.WriteLine(TextBox3.Text) sw.WriteLine(TextBox1.Text) sw.WriteLine(TextBox2.Text) sw.WriteLine(TextBox4.Text) sw.WriteLine(TextBox5.Text) sw.WriteLine(TextBox6.Text) sw.WriteLine(TextBox7.Text) sw.WriteLine(TextBox8.Text)

TextBox9.Text = ((Double.Parse(TextBox4.Text) + Double.Parse(TextBox5.Text) + Double.Parse(TextBox6.Text) + Double.Parse(TextBox7.Text) + Double.Parse(TextBox8.Text)) / 5)//para sacar el promedio de las calificaciones insertadas en los textobox que se indicant en la cadena sw.WriteLine(TextBox9.Text)//el resultado de este textbox se guarda en el numero nueve sw.Close() MessageBox.Show("El usuario " + TextBox3.Text + " fue guardado exitosamente.", "Aviso", MessageBoxButtons.OK) Panel1.Enabled = False

End Sub Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click Dim sr As New StreamReader("C:\Registro\registro.txt") bol = False While bol = False

If sr.ReadLine() = TextBox3.Text Then TextBox1.Text = sr.ReadLine() TextBox2.Text = sr.ReadLine() TextBox4.Text = sr.ReadLine() TextBox5.Text = sr.ReadLine() TextBox6.Text = sr.ReadLine() TextBox7.Text = sr.ReadLine() TextBox8.Text = sr.ReadLine() TextBox9.Text = sr.ReadLine() bol = True End If sr.ReadLine() sr.ReadLine() sr.ReadLine() sr.ReadLine() sr.ReadLine() sr.ReadLine() sr.ReadLine() sr.ReadLine() End While End Sub Private Sub limpiar()//para limpiar todos los textBox TextBox1.Clear() TextBox2.Clear() TextBox3.Clear() TextBox4.Clear() TextBox5.Clear() TextBox6.Clear() TextBox7.Clear() TextBox8.Clear() TextBox9.Clear() End Sub End Class//fin de la clase

Programa en ejecucin

PROYECTO EN C #
Objetivo General De igual manera que el anterior proyecto, aunque este fue elaborado en el lenguaje C #, siendo ms complejo por el cdigo que se tiene que hacer en cada objeto que se incruste en el formulario.

Materiales: *3 mens *4 textBox *2 Button *1GroupBox Interfaz Grafica del Programa:

De esta forma se vera al momento de ejecutar el programa, pero conforme se avanza para ingresar por ejemplo se desplegaran los campos que se requieren y se vera de esta forma:

Como se puede opbservar el programa esta listo para ser utilizado por un usuario como tu, en el cual tambin se observa el menu de buscar como el siguiente:

Codigo de C #
Form1
sing 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.IO; namespace Proyecto_registro_C_Sharp// nombre del proyecto que se ha realizado {

public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { e.Cancel = true; } private void timer1_Tick(object sender, EventArgs e) {//saber si existe el registro if (!File.Exists("registro.txt")) { File.Create("registro.txt"); } this.timer1.Enabled = false; this.Hide(); Form2 f2 = new Form2();//para enlazar el form1 con el form2 f2.ShowDialog(); } } }

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

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

private void Form2_FormClosing(object sender, FormClosingEventArgs e) { Application.ExitThread();//salir de la aplicacion }

private void salirToolStripMenuItem_Click(object sender, EventArgs e) { Application.ExitThread();//salir de la aplicacion } private void Form2_Load(object sender, EventArgs e) { textBox1.Focus();//para que aparezca el punter en el primer textbox o primer caja de texto } private void nuevoToolStripMenuItem_Click(object sender, EventArgs e) { this.Size= new Size(369, 300);//tamao del programa para ocupar menos memoria groupBox1.Visible = true;//para que aparezca visible lo que se encuentra dentro del grupo button3.Visible = false;//como se ingresara entonces no aparecera el boton de buscar pore so es falso button1.Visible = true;//mientras que el primer boton es para guardar textBox1.Clear();//para cerrar cuando se haya guardado el dato textBox2.Clear(); textBox3.Clear(); textBox4.Clear(); } private void buscar_Click(object sender, EventArgs e) { StreamReader sr = new StreamReader("registro.txt");// para leer el Nuevo registro que se ha guardado if (sr.ReadLine() == null) { MessageBox.Show("No hay ningun dato ingresado, primero tienes que ingresar los datos", "Aviso");// al momento de de buscar alguno dato y sino se ha ingresado posteriormente aparecer este mensajito sr.Close(); } else //sino { this.Size = new Size(369, 300);se activara el boton tres groupBox1.Visible = true; button3.Visible = true; button1.Visible = false; } } private void button2_Click(object sender, EventArgs e) { this.Size = new Size(369, 62); groupBox1.Visible = false; button3.Visible = true; button1.Visible = true; textBox1.Clear(); textBox2.Clear(); textBox3.Clear(); textBox4.Clear(); }

private void button1_Click(object sender, EventArgs e) { StreamWriter sw = new StreamWriter("registro.txt"); if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "" || textBox4.Text == "")//para ingresar un nuevo dato { MessageBox.Show("Faltan datos por ingresar", "Aviso"); }//si no se llenan todas las cajas de texto marcara un error mandando este mensaje else {//sino pues sera necesario de llenar todos los campos que se indicant en el programa en su ejecucion sw.WriteLine(textBox1.Text); sw.WriteLine(textBox2.Text); sw.WriteLine(textBox3.Text); sw.WriteLine(textBox4.Text); sw.WriteLine(fecha.Value); sw.Close(); this.Size = new Size(369, 62); groupBox1.Visible = false; button3.Visible = true; button1.Visible = true; textBox1.Clear(); textBox2.Clear(); textBox3.Clear(); textBox4.Clear(); } } private void button3_Click(object sender, EventArgs e) { StreamReader sr = new StreamReader("registro.txt"); bool x = false; while(x==false) { if (sr.ReadLine() == textBox1.Text)//para leer lo que se encuentre en la primer caja de texto en busca del registro que se haya pedido, en el cual en este caso seria el numero de control { textBox2.Text = sr.ReadLine(); textBox3.Text = sr.ReadLine(); textBox4.Text = sr.ReadLine(); fecha.Text = sr.ReadLine(); x = true; sr.Close(); } Else//sino implicitamente dira que no se ha encontrado ningun registro con ese dato { sr.ReadLine(); sr.ReadLine(); sr.ReadLine(); sr.ReadLine(); if (sr.ReadLine() == null) { MessageBox.Show("No se encontro el usuario"); sr.Close(); x = true;

} } } } private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if (Char.IsNumber(e.KeyChar))//se pone esta condicion en el cual es para que acepte nadams caracteres, osea no numeros; en este programa el numero de control ser con letras. { e.Handled = true; } } } }

Você também pode gostar