Mostrando entradas con la etiqueta youtube. Mostrar todas las entradas
Mostrando entradas con la etiqueta youtube. Mostrar todas las entradas

viernes, 19 de abril de 2013


Programando en Borland C++ 5.02 (Cap.II)

Hola amigos del Blog.
En esta entrega aprenderemos a pintar en pantalla “Cajas” o rectángulos mediante rutinas que faciliten la tarea.
Las “Cajas” podrán tener borde de distintos tipos (simple, doble, ancho…) y con su color propio.
Para ello nos crearemos una estructura que contenga la información de cada una de nuestras “Cajas”.

struct rCaja
{int Fila, Columna, Largo, Alto, Tinta, Papel, Marco, Fondo;} Caja;

Parece que todos los elementos se entienden con claridad. El elemento ”Fondo” se usa para poner el color de fondo en casos en el que el ”Marco” sea especial como veremos en el ejemplo.
De esta manera, en nuestro programa principal bastaría con llamar a la función “PintaCaja” con los elementos de la estructura debidamente asignados, para pintar una “Caja” en pantalla.
Veamos cómo quedaría la función y el programa principal:

#include   <conio.h>
#include   <stdio.h>
#include   <string.h>
#include   <time.h>
#include   <dos.h>
#include   <windows.h>

//======================================================================
// Colores
// http://sertocestutoriales.blogspot.com.es/
// https://www.youtube.com/user/sertoces
//=======================================================================
 

#define NEGRO    0
#define AZUL     1
#define VERDE    2
#define CYAN     3
#define GRANATE  4
#define MORADO   5
#define MARRON   6
#define BLANCO   7
#define GRIS     8
#define AZULB    9
#define VERDEB   10
#define CYANB    11
#define ROJO     12
#define LILA     13
#define AMARILLO 14
#define BLANCOB  15
#define BRILLO   128
 
struct rCaja
{ int Fila, Columna, Largo, Alto, Tinta, Papel, Marco, Fondo; } Caja;

//========================================================================
// Funcion Caja

// http://sertocestutoriales.blogspot.com.es/
// https://www.youtube.com/user/sertoces
//========================================================================
 
 
void PintaCaja (rCaja Caja)
{
 char ESI, ESD, EII, EID, HS, HI, VI, VD;
 int  i, j, PapelEsp;
  _setcursortype(_NOCURSOR);
 PapelEsp=Caja.Papel;
 if (Caja.Marco <0) //Si es menor que cero nos Mandan un character determinado
 {   //lo convertimos a positivo y lo usamos como MARCO.
  i = Caja.Marco*-1;
  ESI=i; ESD=i; EII=i; EID=i; HS=i; HI=i; VI=i; VD=i;
 }
 else
 //En función del tipo de MARCO inicializamos las esquinas y las líneas Verticales y
 //Horizontales
 switch (Caja.Marco)
 {
  case 1:  ESI=218; ESD=191; EII=192; EID=217; HS=196; HI=196; VI=179; VD=179;  break; //Linea simple
  case 2:  ESI=201; ESD=187; EII=200; EID=188; HS=205; HI=205; VI=186; VD=186;  break; //Linea doble
  case 3:  ESI=219; ESD=219; EII=219; EID=219; HS=223; HI=220; VI=219; VD=219;  break; //Linea ancha
  case 4:  ESI=220; ESD=220; EII=223; EID=223; HS=220; HI=223; VI=219; VD=219;  break; //Linea Ancha corta
  case 5:  ESI=219; ESD=219; EII=223; EID=223; HS=223; HI=223; VI=219; VD=219;  break; //Linea Ancha corta-abajo
  case 6:  ESI=220; ESD=220; EII=219; EID=219; HS=220; HI=220; VI=219; VD=219;  break; //Linea Ancha corta-arriba
  case 7:  ESI= 43; ESD= 43; EII= 43; EID= 43; HS= 45; HI= 45; VI=221; VD=221;  break; //Linea texto
  case 8:  ESI=254; ESD=254; EII=254; EID=254; HS=254; HI=254; VI=254; VD=254;  break; //Linea puntos
  case 9:  ESI=250; ESD=250; EII=250; EID=250; HS=250; HI=250; VI=250; VD=250;  break; //Linea puntos
  default: ESI= 32; ESD= 32; EII= 32; EID= 32; HS= 32; HI= 32; VI= 32; VD= 32;  break;
 }
 gotoxy (Caja.Columna, Caja.Fila);
 if (Caja.Marco==4 || Caja.Marco==6) PapelEsp=Caja.Fondo;
 if (PapelEsp>7) textcolor(Caja.Tinta+BRILLO); else textcolor(Caja.Tinta);
 textbackground(PapelEsp);
 cprintf("%c",ESI);
 for (i = 1; i < Caja.Largo-1; i++) cprintf("%c",HS);
 cprintf("%c",ESD);
 if (Caja.Papel>7) textcolor(Caja.Tinta+BRILLO); else textcolor(Caja.Tinta);
 textbackground(Caja.Papel);
 
 for (j=1; j<Caja.Alto-2; j++)
 {
  gotoxy (Caja.Columna, Caja.Fila+j);
  cprintf("%c",VI);
  for (i = 1; i < Caja.Largo-1; i++) cprintf("%c",32);
  cprintf("%c",VD);
 }
 if (Caja.Marco==4 || Caja.Marco==5) PapelEsp=Caja.Fondo; else PapelEsp=Caja.Papel;
 gotoxy (Caja.Columna, Caja.Fila+j);
 if (PapelEsp>7) textcolor(Caja.Tinta+BRILLO); else textcolor(Caja.Tinta);
 textbackground(PapelEsp);
 cprintf("%c",EII);
 for (i = 1; i < Caja.Largo-1; i++) cprintf("%c",HI);
 cprintf("%c",EID);
}
//========================================================================
// FIN Funcion Caja
//========================================================================


//************************************************************************ 
//************************************************************************

//========================================================================
// Programa principal
//========================================================================
main()
{
 //--------------------------------------------------------------------
 //Test de Caja
 //--------------------------------------------------------------------
 gotoxy(20,2);
 printf("Pulsa una tecla");

rCaja MyCaja;
 MyCaja.Fila = 1;
 MyCaja.Columna = 60;
 MyCaja.Largo = 20;
 MyCaja.Alto = 26;
 MyCaja.Tinta = CYANB;
 MyCaja.Papel = VERDE;
 MyCaja.Fondo = AMARILLO;
 for (MyCaja.Marco = 0; MyCaja.Marco < 10; MyCaja.Marco++)
 {
  PintaCaja (MyCaja);
  getch();
 }
}
//=======================================================================
// FIN Programa principal

// http://sertocestutoriales.blogspot.com.es/
// https://www.youtube.com/user/sertoces
//=======================================================================


Os dejo como tarea pintar un “efecto sombra” a la “Caja”.

Espero que os sea útil e instructivo.

En la próxima entrega veremos cómo se pueden simular “Botones”.


Si os ha gustado suscribíos a mi canal y compartid esta entrada.



Gracias a todos.

domingo, 24 de febrero de 2013

Realizo backgrounds para escritorio, youtube, twitter, facebook...

Muy buenas a todos queridos lectores, simplemente hago esta entrada para informaros a todos los youtubers, twitteros, y demás que realizo backgrounds para vuestras redes sociales o vuestro escritorio, en 3d o simples.


pincha aquí para ir al formulario: 

http://adf.ly/MNi1x

 Simplemente contactar conmigo a través de youtube, novamatica.es, o mi correo sertoces@gmail.com para hablar de precios.

Os dejo aquí unos ejemplos que he realizado de backgrounds para youtube y para el escritorio para que le hecheis un ojo. El pago sería a través de paypal.

*PARA VER LA IMAGEN EN TAMAÑO COMPLETO, CLICK EN ELLA Y LUEGO CLICK DERECHO SOBRE ELLA, VER IMAGEN.

 














RELLENA EL SIGUIENTE FORMULARIO PARA TU BG





/* lo que yo hago ___________________________*/ /*___________________________________________________________*/