Mar 222021
 

Este es el reproductor musical que había mencionando en el post anterior
donde se mostraba cómo implementar el diseño Neomorfismo (Neumorphism Design) en vb6, en este proyecto se aplicó un ejemplo funcional del mismo. El diseño en si esta copiado de esta imágen.

Para el motor de reproducción se utilizó bass.dll y uno de sus complementos bass_fx.dll muy recomendable echarle una mirada a toda esta suite de librerías que cuentan con ejemplos para vb6.

Si bien al principio iba a hacer algo sencillo después se me dió por hacer algo bien completo donde se implementaron algunas características como: leer desde una lista de reproducción, líneas de comando, arrastrar y soltar, editor de etiquetas, ecualizador, display animado, vista previa en la barra de tareas, manejo con teclado y bueno seguramente muchas muchas cosas me estarán faltando, lo cual algunas podré agregar más adelante si me las sugieren.

En cuanto a la lista de reproducción no recomiendo cargar más de 300 canciones ya que la forma en que armé el control de lista es muy limitado porque utiliza controles en vez de métodos gráficos, pero bien creo que con 300 canciones es un número respetable.

La aplicación es 100% portable con soporte a Unicode

neumoplayer1.png neumoplayer2.png neumoplayer3.png neumoplayer4.png
Descargar Proyecto
Descargar Binario + un Mp3 de mi banda «Viento Rojo»
 
Mar 182021
 

En este caso se trata por un lado de un Módulo clase y por otro un Usercontrol para crear una interfaz de usuario moderna llamada Neumorphism o Neomorfismo, la cual comenzó a ponerse de moda a partir del 2020, si bien está pensada para aplicaciones móviles o webs no veo motivo para no implementarlo en nuestro querido vb6, al menos en aplicaciones pequeñas para no sobrecargar mucho la memoria y ralentizar nuestra app. El motor de todo esta basado en GDI+.

Con el módulo clase hay un ejemplo donde podemos jugar con las propiedades de la clase y otro formularios con algunos ejemplos graficados.
Además este permite dibujar un Path de GDI+ con el cual se utilizó un módulo extra, donde se puede crear distintas formas (Shapes) y se les puede aplicar el estilo, aprovecho para agradecer a Eduardo por tomar parte de las rutinas de su ShapeEx.



Con el Usercontrol hay tres ejemplos aplicados. No voy a detallar todas las propiedades, es cuestión de meter mano y jugar un poco, son las mismas del módulo. Con los ejemplos esta acompañando el usercontrol «LabelPlus» que es para agregar texto e iconos a las formas, (no quise volver a programar todo esto por eso utilicé dos usercontrols).

Ya más adelante voy a subir un reproductor de música en el que estoy trabajando donde puede verse todo esto aplicado.

Por último quiero aclarar que todo esto funciona más rápido cuando está compilado..

Neumorphism1.png Neumorphism2.png Neumorphism3.png Neumorphism4.png Neumorphism5.png
 
Mar 012021
 

Hola en esta ocasión un poco más de lo mismo ya en el blog hay 3 artículos más referidos a menús, pero bien, esta clase se trata de armar un menú popup con apis de una forma más sencilla y con varias propiedades que vb6 no contiene, algunas de ellas son: ItemBitmap, ItemRadioCheck, ItemDefault, ItemHilite, ítems en columna (Break).

Como plus hay un módulo que sirve para leer imágenes, con un tamaño específico, esto esta pensado más que nada para soporte del DPI.

Dentro del módulo está la función llamada LoadPictureEx con la que podemos pasarle como primer parámetro:

  • Un Array de bits de la imagen
  • El path de la imagen
  • Una Url web de la imagen
  • Una url con la imagen codificada en ella «data:image/png;base64,iVBORw…»
  • Un objeto Stream (devuelto por algunas librerías de windows)
  • Un hBitmap
  • un hIcon

El segundo y tercer parámetro es el alto y ancho de la imagen. El tercero boolean si queremos que se ajuste a ese ancho o que sea proporcional. El cuarto parámetro el formato de salida vbPicTypeBitmap o vbPicTypeIcon. El quinto parámetro es un color, para esas imágenes tipo vectoriales de un solo color, con esta función podemos pintarlas a ese color (aclaro no tiene soporte para SVG). El sexto parámetro BackColor, sería por si es un png y lo queremos mostrar en un control imagen, elegimos su color de fondo.

la función retorna un iPicture o StdPicture con un Bitmap o Icono con una imagen de 32Bits de profundidad, la cual sirve para pasar a los common controls. y el menú por supuesto. también se pude utilizar con el icono del formulario con SendMenssage, el SysTray etc etc etc.

ClsApiMenu.png