Inicio > Foros
Resultados 1 al 23 de 23
Tema: Ejemplos para iniciarse en Visual Basic
-
28/03/2006, 20:11El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
Ejemplos para iniciarse en Visual Basic
Se me ha ocurrido abrir este hilo para que todo aquel que quiera participar pueda ir exponiendo, de forma organizada, ejemplos, explicaciones y pequeños proyectos en Visual Basic, tratados desde un punto de vista totalmente inicial, para principiantes o gente que tenga el programa y nunca supo o se atrevió a hacer nada.
Me gustaría animar desde aquí a cualquiera que nunca haya programado para que se ponga con ello, porque el solo hecho de hacerlo (no importa el lenguaje) supone la adquisición de unas habilidades mentales que luego vienen de maravilla para cualquier otro estudio de ciencias, o para aprender otros lenguajes de programación. Se aprende a razonar, a estructurar, a resolver problemas, a pensar de forma lógica, etc.
En este primer mensaje podemos poner un índice todos los ejemplos que vayan apareciendo, y cada vez que alguien escriba que indique el número de ejemplo al que hace su aportación
Por ejemplo, y para empezar, dos temas que dejó abiertos Petete en otro hilo http://www.hard-h2o.com/vertema/41136.html
EJEMPLO 1- Realización de un sencillo programa tipo Paint (uso de colores, etc)
EJEMPLO 2- Cómo reproducir sonidos de diversos tipos (wav, midi, etc) desde un programa en VB
Voy editando y vamos añadiendo más:
EJEMPLO 3- Realización de una Calculadora Científica en Vb
EJEMPLO 4- Realizar un menú de un CD de programas / utilidades
-
28/03/2006, 20:25BeWild
- Fecha de ingreso
- 25 nov, 04
- Mensajes
- 6,967
Yo este año debería de dar Visual Basic... pero no se si el profesor será capaz de expicarlo, y de que le de tiempo despues de ver Word, Excel y Frontpage
-
28/03/2006, 21:17El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
EJEMPLO 1- Realización de un sencillo programa tipo Paint (uso de colores, etc)
Algo muy sencillo para empezar a abrir boca
La idea es hacer una especie de pizarra donde se pueda dibujar por medio del ratón, sin más complicaciones
Pasos:
1-En el form creamos un PictureBox del tamaño deseado al que ponemos de nombre "pizarra" (sin las comillas). Si se desea se le puede poner ahora un color de fondo, buscando la propiedad "BackColor" (hay una ventanita donde aparece una lista de todas las propiedades del objeto seleccionado). También deberíamos ponerle la propiedad AutoRedraw con el valor True, para que la pizarra no se borre cuando ponemos otras ventanas encima
2-Hacemos doble clic sobre cualquier lugar del form (que no sea la pizarra) y aparece el código de programación, en este caso correspondiente al Form_Load. Estas líneas de código son las primeras que se ejecutarán cuando pongamos en marcha el programa. Añadimos el siguiente código:
Private Sub Form_Load()
pizarra.FillStyle = 0
pizarra.BackColor = RGB(87, 13, 45)
End Sub
pizarra.backcolor significa color de fondo de la pizarra, y lo estamos cambiando nada más ejecutarse el programa, utilizando para ello la función RGB
La función RGB necesita tres argumentos, que son tres números entre 0 y 255, uno para controlar cada color (rojo, verde, azul).
RGB(0,0,0) corresponde al color negro
RGB(255,255,255) corresponde al color blanco intenso
RGB(255,0,0) corresponde al color rojo
por supuesto podéis probar valores intermedios para cada componente, y obtendremos 16 millones de colores distintos... (color de 24 bits, 8x3=24)
vale, ahora vamos a hacer que dibuje círculos cuando pasamos el ratón por encima con el botón izquierdo apretado
esto lo tenemos que programar en el apartado pizarra_MouseMove, que se ejecutará sólo cuando el ratón se mueva sobre la pizarra
3-para ello doble clic en la pizarra, aparecerá pizarra_click, pero hay que cambiarlo en la lista por Mouse_Move
y entonces programamos lo siguiente (se puede copiar y pegar)
Private Sub pizarra_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
rojo = Int(Rnd * 256)
verde = Int(Rnd * 256)
azul = Int(Rnd * 256)
c = RGB(rojo, verde, azul)
pizarra.FillColor = c
pizarra.Circle (X, Y), 200, c
End If
End Sub
rojo, verde y azul son variables que definimos mediante un número aleatorio (al azar) comprendido entre 0 y 255, ese número se calcula Int(Rnd*256)
y luego definimos "c" como el color aleatorio recién generado, utilizando rojo, verde y azul y la función RGB
pizarra.FillColor = c (cambia el color con el que se rellenan figuras en la pizarra). Si se prescinde de esta línea todos los círculos saldrían rellenos de negro (probadlo)
pizarra.Circle (X, Y), 200, c (dibuja un círculo de radio 200 centrado en el puntero del ratón, que son las coordenadas X e Y, y con el borde de color "c")
podéis probar otros radios, más grandes o más pequeños
"if Button=1 Then" lo que hace es ejecutar el código sólo en el caso de que el botón izquierdo del ratón esté apretado. Podéis cambiar el número para que funcione con otros botones.
y eso es todo. El resultado es una pizarra que dibuja así:
si no os sale o no se entiende algo podéis preguntar
y sobre todo probad a cambiar cosas, por ejemplo dejar fija una de las coordenadas de color del RGB (p.e. que el rojo siempre sea 20), intentar poner un textBox para cambiar ahí el radio del círculo, o cualquier otra cosa que se os ocurra...
saludos
-
28/03/2006, 21:40BeWild
- Fecha de ingreso
- 25 nov, 04
- Mensajes
- 6,967
Zorro, permiteme que te ponga un par de ejercicios:
EJEMPLO 3- Realización de una Calculadora Científica en Vb
EJEMPLO 4- Realizar un menú de un CD de programas / utilidades
-
28/03/2006, 21:48El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
perfecto, cuantos más ejemplos mejor, pero no me los pongas a mí, son para todos. El nº4 vas a tener que explicarlo mejor. ¿Qué es lo que quieres que haga ese menú exactamente? ¿Cómo debería presentar la información?
espero que la gente se anime a participar...
txakurra, ayudaaaa jajaja
-
28/03/2006, 22:43txakurra
- Fecha de ingreso
- 05 feb, 05
- Ubicación
- ES
- Mensajes
- 8,213
NLO a faro! NLO a faro! Os traigo un completo ejemplo del paint. Falta la paleta de colores (ya se la incorporaré más adelante). Espero que podáis conformaros con dibujar en B&N (blanco y negro). Podéis descargar el ejemplo aquí.
-
29/03/2006, 00:42Hard_Vader
- Fecha de ingreso
- 16 nov, 05
- Mensajes
- 1,140
bueno pues me parece estupendo este thread.
yo hago mis pinitos con VB y programo muchisimo con VBA (Visual Basic Access), de hecho curro programando en VBA :wink:
no tengo mucho tiempo pero intentaré colaborar todo cuanto pueda.
Zalu2x...
-
29/03/2006, 10:45txakurra
- Fecha de ingreso
- 05 feb, 05
- Ubicación
- ES
- Mensajes
- 8,213
VBA no significa Visual Basic Access sino Visual Basic for Applications (Visual Basic para Aplicaciones). Es el VB que viene con el Office.
-
29/03/2006, 20:03Hard_Vader
- Fecha de ingreso
- 16 nov, 05
- Mensajes
- 1,140
ummm mu bien mu bien... jajaja
pos eso... q si teneis problemas con el VBA q intentaré echaros una manilla :roll:
-
30/03/2006, 17:50El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
EJEMPLO 1- Realización de un sencillo programa tipo Paint (uso de colores, etc)
complementando al paint de txakurra aquí tenéis otro programa de dibujo, tal vez enfocado desde un aspecto más lúdico, y que puede servir perfectamente para ilustrar la utilización del color RGB, los círculos, las líneas, grosores, etc
lo he hecho utilizando simplemente un picturebox (que es la pizarra), un par de funciones que dibujan círculos y líneas, y las propiedades específicas tanto del picturebox como de estas dos funciones
espero que os guste
http://es.geocities.com/alber137/dibujo.zip
dentro de un rato me meto con lo del sonido y las apis de windows, para reproducir archivos de onda, midis, etc desde un programa en VB
saludos
-
30/03/2006, 22:43El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
quienes se quedaron con ganas de probar el CODIFICADOR DE DATOS MEDIANTE UNA CLAVE, por ejemplo para encriptar una foto que no quieres que nadie vea, o un texto, o lo que sea, podéis descargarlo en este link (pongo tanto el código fuente como el ejecutable)
http://es.geocities.com/alber137/codificar.zip
-
30/03/2006, 22:48El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
y como último aporte de hoy, aquí va lo de los sonidos
EJEMPLO 2- Cómo reproducir sonidos de diversos tipos (wav, midi, etc) desde un programa en VB
Daré dos métodos utilizando dos APIs (funciones internas de windows) incluídas dentro de la librería WinMM
En cualquier caso estoy programando un juego que mañana pondré y que ilustra esto del sonido y otras muchas cosas interesantes
Vamos con el sonido
1er método: Más sencillo de utilizar pero menos potente. No admite reproducción de varios sonidos simultáneos
Consiste en definir la siguiente función (basta copiarla arriba del todo, en declaraciones generales)
Private Declare Function sndPlaySoundA Lib "WinMM" (ByVal nameString As String, ByVal flags As Integer) As Integer
errorcode = sndPlaySoundA("c:\sonido.wav", &H1)
2º método: Mucho más potente aunque hay que conocer mejor las cadenas de texto que podemos enviar a la función, que son muchas y variadas
Se definen las siguientes variables y función (en declaraciones generales)
Dim e As Long
Dim mensaje As String * 255
Private Declare Function mciSendStringA Lib "WinMM" (ByVal mciCommand As String, ByVal returnStr As String, ByVal returnLength As Long, ByVal callBack As Long) As Long
Private Sub Form_Load()
e = mciSendStringA("open d:\sonataD959.mid type sequencer alias sonata", mensaje, 255, 0)
e = mciSendStringA("open c:\explosion.wav type waveaudio alias explo", mensaje, 255, 0)
e = mciSendStringA("open cdaudio alias cd", mensaje, 255, 0)
......
'Reproduce la explosión desde el principio
e = mciSendStringA("seek explo to start", mensaje, 255, 0)
e = mciSendStringA("play explo", mensaje, 255, 0)
'Reproduce la sonata en midi desde el principio
e = mciSendStringA("seek sonata to start", mensaje, 255, 0)
e = mciSendStringA("play sonata", mensaje, 255, 0)
'Reproduce el CD
e = mciSendStringA("play cd", mensaje, 255, 0)
y así se hace siempre, lo que varía es la cadena, lo de "mensaje, 255, 0" es siempre igual
Saludos!!
-
31/03/2006, 01:19txakurra
- Fecha de ingreso
- 05 feb, 05
- Ubicación
- ES
- Mensajes
- 8,213
Iniciado por El_Zorro
EJEMPLO 1- Realización de un sencillo programa tipo Paint (uso de colores, etc)
complementando al paint de txakurra aquí tenéis otro programa de dibujo, tal vez enfocado desde un aspecto más lúdico, y que puede servir perfectamente para ilustrar la utilización del color RGB, los círculos, las líneas, grosores, etc
lo he hecho utilizando simplemente un picturebox (que es la pizarra), un par de funciones que dibujan círculos y líneas, y las propiedades específicas tanto del picturebox como de estas dos funciones
espero que os guste
http://es.geocities.com/alber137/dibujo.zip
dentro de un rato me meto con lo del sonido y las apis de windows, para reproducir archivos de onda, midis, etc desde un programa en VB
saludos
-
03/04/2006, 22:34El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
UN PEQUEÑO JUEGO
aquí dejo un nuevo ejemplo de programación. En este caso tenemos una especie de futbolín, con dos plataformas rojas, una a cada lado, y la cabeza de homer simpson hace de pelota, rebotando por todas partes
La plataforma de la izquierda se controla (sube y baja) con las teclas "a" y "z"
La plataforma de la derecha con los cursores arriba y abajo
El movimiento de las plataformas es muy fluído, el de homer también. A cada momento la velocidad de homer se hará más rápida, hasta alcanzar velocidades enormes
Le he puesto dos sencillos sonidos para que sirvan de ejemplo, pueden cambiarse por otros que gusten más
IMPORTANTE: La velocidad del juego depende del PC. He puesto un textBox llamado "retardo" que nos permite controlar la velocidad. Si ves que va muy rápido pon más retardo. Si por el contrario va muy lento, lo bajas, hasta conseguir la velocidad deseada
También se puede controlar el tamaño de cada plataforma, así como la velocidad a la que se desplaza arriba/abajo
A ver si os gusta, lo podéis descargar de aquí
http://es.geocities.com/alber137/pelota.zip
Una captura del juego:
-
05/04/2006, 22:46txakurra
- Fecha de ingreso
- 05 feb, 05
- Ubicación
- ES
- Mensajes
- 8,213
Ese juego tiene más años... Y no me refiero al que has puesto sino al sistema.
Yo tenía otro más cutrecillo que usaba un mediaplayer integrado para reproducir música de fondo. Estaba basado en un juego que venía en un tetris de esos 9999-in-1 (que de 9999 tan solo había 7 juegos diferentes). en la parte inferior una "navecilla espacial". En la parte superior un "virus" que se va comiendo la pantalla. La cuestión es disparar al virus para despejar la zona. Cada vez va más rápido. En mi versión hay unos pequeños extras (unas "bombas" para limpiar una columna o toda la pantalla). Intentaré localizarlo.
-
06/04/2006, 13:11El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
hombre ya, que la idea del juego es vieja es evidente, no he inventado nada...
pero una cosa que quede clara: todos los programas que pongo y pondré aquí están totalmente realizados por mí, desde la primera línea hasta la última, y sin copiar ejemplos ni trozos de código de ninguna parte. Así lo he hecho siempre y así me gusta hacerlo
empecé a programar cuando tenía 14 años y tengo docenas de juegos, algunos de ellos muy complejos, (juegos de cartas, puzzles a partir de cualquier foto que tengamos, programas que piensan y juegan por si mismos al reversi o cuatro en raya con la profundidad de pensamiento que queramos, etc.), pero la idea es ir exponiendo las cosas poco a poco y con dificultad creciente
si queréis música de fondo se la ponemos, podemos hacerlo de forma sencilla con la función mciSendStringA que expliqué el otro día, o bien insertando un reproductor multimedia en el mismo form, que podemos hacer visible o invisible
para el juego de homer utilicé un método muy potente que se puede aplicar a los PictureBox llamado PaintPicture, que permite copiar un trozo de una imagen en otra, en la posición deseada y con las condiciones de superposición que queramos, y a una velocidad enorme. Eso nos permite (entre otras muchas cosas) mover objetos dentro de una ventana (en este caso homer) pixel a pixel
iré poniendo más ejemplos sencillos de la utilización de este método, porque me parece fundamental
saludos
-
07/04/2006, 12:36
Buenos ejemplos,, thx again!! Me han gustado esas barritas de desplazamiento para tomar los colores pero no se hacerlo,,, en mi VBasic no aparecen esas barritas,, ayuda!!!!
lo del sonido ya lo voy manejando bien
salu2 :wink:
-
07/04/2006, 17:57El_Zorro
- Fecha de ingreso
- 02 nov, 05
- Mensajes
- 868
hola petete,
las barras de desplazamiento se llaman sliders, y puedes encontrarlas en "componentes" (presiona ctrl+t). Eliges los Microsoft Windows Common Controls y ahí tienes los sliders, junto a muchas otras cosas interesantes
usar los sliders es fácil, les pones un valor mínimo y un máximo, el incremento grande y el pequeño, y el valor que marque la barrita lo tomas mediante la propiedad value, del modo "slider1.value" (por ejemplo)
saludos :lol:
-
23/04/2006, 11:04txakurra
- Fecha de ingreso
- 05 feb, 05
- Ubicación
- ES
- Mensajes
- 8,213
Me resistía a "liberar" el código, pero finalmente lo he hecho.
Hoy os traigo un protector de pantalla. Es algo complejo, así que solo lo recomiendo para aquel en vías de programador avanzado, aunque creo que las notas explicatorias en el código son suficientes para entender por encima lo que hace cada parte.
Aquí lo podéis descargar. He incluido el protector ya compilado y un archivo de texto sin formato con las instrucciones de cómo se ha de generar el proyecto. Si no se entiende, preguntad.
Espero que os guste y que le saquéis provecho.
Saludos.
-
23/04/2006, 14:40LuNaF7
- Fecha de ingreso
- 16 abr, 06
- Mensajes
- 143
Madre mia visual hasta en los foros XD No puedo mas ya!!!!! Me paso 6 horas al dia programando necesito un kit kat XD
Yo ahora estoy haciendo una aplicacion en visual basic.net con conexion a base de datos (sql server) para gestionar una inmobiliaria pero aun no esta acabada la tengo que entregar dentro de unas semanas que miedo =(
Por si os sirve de algo en esta web www.elguille.info/ hay de todo, ejemplo, tutoriales etc.. =D
-
23/04/2006, 14:42LuNaF7
- Fecha de ingreso
- 16 abr, 06
- Mensajes
- 143
Por cierto, el año pasado hice el PACMAN en visual, a ver si lo encuentro y os lo paso, con sonidos y diferentes niveles y pantallas ^^
-
23/04/2006, 16:14Shadow
- Fecha de ingreso
- 03 feb, 05
- Ubicación
- Donostia
- Mensajes
- 287
Hombre, por fin otro con visual basic .net... pensaba que yo seria el unico, o casi. Yo tuve que hacer para una amiga fisioterapeuta un programa de gestion para pacientes, consultas, reporte de datos... esas cositas accediendo a access, pk ponerle otra bd no tendria sentido. Pondria el enlace con el codigo fuente y el pakete de instalacion, pero viendo el nivel que hay me da cosa, pk ademas, yo mismo me hago unas pajas mentales de la leche.
Saludos!
-
08/11/2006, 04:23
Programador en VBASIC & SQL
Estoy aquí para engrandecer mis conocimientos en VB6.
Powered by vBulletin® Version 4.2.5
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.
Traducción por vBulletin Castellano Copyright © 2025.
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.
Traducción por vBulletin Castellano Copyright © 2025.
AutoLinker v1.3 by Poker Forum