• Lunes 19 de Mayo de 2025, 05:58

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - JuanK

Páginas: 1 ... 196 197 [198] 199 200 ... 231
4926
C/C++ / Re: Quicksort
« en: Miércoles 15 de Octubre de 2003, 17:36 »
de que lenguaje estas hablando.. no te entendi.

4927
C/C++ / Re: Como puedo borrar el cursosr??...
« en: Miércoles 15 de Octubre de 2003, 17:35 »
utiliza la funcion int86.. que sirve para recurrir a las interrupciones de la bios
para mayor informacion consulta el libro "lenguaje c para expertos " de Helbert Schild.

4928
DirectX / clipper de backbuffer en modo windowed
« en: Martes 14 de Octubre de 2003, 23:21 »
Bueno resulta que el clipper esta diseñado para trabajar en una superficie principal, no por su funcion de clipper como tal sino por los metodos y optimizaciones que implementa.

Asi que decidi no manejar ningun Clipper para las superficies no principales, y he diseñado una pequeña rutina que recorta el rectangulo correspondiente a las dimensiones de un frame de un sprite, de acuerdo a las dimensiones de la pantalla:

 
Código: Text
  1.  
  2.    /// <summary>
  3.    /// Recorta un rectangulo de un AnimateSprite y recalcula la
  4.    /// coordenada inisial de dibujo para adecuarlos a los
  5.    /// limites de resolucion de pantalla actuales, se debe usar como ultimo
  6.    /// paso antes del blitting.
  7.    /// </summary>
  8.    /// <param name="currentDestination">
  9.    /// Se modifica por referencia, se recalculan las coordenadas
  10.    /// para que se adecuen a los limites de resolucion de pantalla
  11.    /// actuales y al rectangulo de dibujo recalculado.
  12.    /// </param>
  13.    /// <param name="spriteRect">
  14.    /// Se modifica por referencia, se recalculan los cuatro
  15.    /// puntos del rectangulo para lea solo el area de superficie
  16.    /// que sera bliteada a otra superficie posteriormente
  17.    /// </param>
  18.    /// <returns>
  19.    /// Retorna true si el rectangulo resultante es visible en pantalla,
  20.    /// y false si el rectangulo no sera visible en pantalla.    
  21.    /// </returns>
  22.    private bool SpriteClipper(ref Point currentDestination, ref Rectangle spriteRect)
  23.    {
  24.       if( (currentDestination.X + spriteRect.Width) <= 0 || currentDestination.X > ancho || (currentDestination.Y + spriteRect.Height) < 0 || currentDestination.Y > alto)
  25.          return false;
  26.  
  27.       #region Clipear en X
  28.       if(currentDestination.X < 0)
  29.       {
  30.          spriteRect.X =  spriteRect.X - currentDestination.X ;
  31.          spriteRect.Width = spriteRect.Width + currentDestination.X;
  32.          
  33.          if(spriteRect.X >= spriteRect.Right)
  34.             spriteRect.X = spriteRect.Right -1;
  35.          if(spriteRect.X < 0)
  36.             spriteRect.X = 0;
  37.          if(spriteRect.Width < 1)
  38.             spriteRect.Width = 1;
  39.    
  40.          currentDestination.X = 0;
  41.       }
  42.  
  43.       if((currentDestination.X + spriteRect.Width) > ancho)
  44.       {
  45.          spriteRect.Width-= currentDestination.X + spriteRect.Width - ancho;
  46.          if(spriteRect.Width <= 0)
  47.             spriteRect.Width = 1;
  48.          
  49.          if(currentDestination.X >= ancho)
  50.                 currentDestination.X = ancho - spriteRect.Width;
  51.       }
  52.       #endregion
  53.       #region Clipear en Y
  54.       if(currentDestination.Y < 0)
  55.       {
  56.          spriteRect.Y =  spriteRect.Y - currentDestination.Y ;
  57.          spriteRect.Height = spriteRect.Height + currentDestination.Y;
  58.          
  59.          if(spriteRect.Y >= spriteRect.Bottom)
  60.             spriteRect.Y = spriteRect.Bottom -1;
  61.          if(spriteRect.Y < 0)
  62.             spriteRect.Y = 0;
  63.          if(spriteRect.Height < 1)
  64.             spriteRect.Height = 1;
  65.    
  66.          currentDestination.Y = 0;
  67.       }
  68.  
  69.       if(currentDestination.Y > (alto - spriteRect.Height))
  70.       {
  71.          spriteRect.Height -= currentDestination.Y + spriteRect.Height - alto;
  72.          if(spriteRect.Height <= 0)
  73.             spriteRect.Height = 1;
  74.          
  75.          if(currentDestination.Y >= alto)
  76.             currentDestination.Y = alto - spriteRect.Height;      
  77.       }
  78.       #endregion
  79.       return true;
  80.    }
  81.  
  82.  

Lo unico raro aqui es la clase AnimateSprite, que es una calse que diseñe para leer mi propio formato grafico desde un archivo, esta clse separa la imagen como bitmap y adicionalmente carga un colleccion con las coordenadas x, y, ancho y alto correspondientes a cada frame que exista en el bitmap

Es algo enrredado de explicar pero si ven lo unico que necesita de cada animateSprite son las coordenadas de cada rectangulo, para modificarlas antes de proceder a dibujar.

De esta manera se corrige el error al dibujar fuera de la superficie, porque ya no se dibuja nada por fuer de la superficie, simplemente se recorta y se utiliza solo lo que se ve en pantalla.

4929
C/C++ / Re: problema con programa, soy nuevo
« en: Martes 14 de Octubre de 2003, 23:13 »
Y exactamente que es lo que no entiendes como hacer.?

4930
C/C++ / Re: ayuda
« en: Martes 14 de Octubre de 2003, 21:22 »
Nesecito que me hagan mi trabajo de grado y gratis.. ni siquiera les voy a pedir el favor.
:sorcerer::devil:

4931
C/C++ / Re: Implementando APIs
« en: Martes 14 de Octubre de 2003, 19:56 »
solo necesitas conseguir la libreria y los encabezados para lenguaje c.

4932
Dudas informáticas / Re: PARA LOS ELECTRONICOS
« en: Martes 14 de Octubre de 2003, 19:37 »
En la página de intel hay muchisima infomracion.. tal vez consigas algo.. he aqui un link.

http://www.intel.com/design/pentiumiii/ ... 965704.pdf

4933
General / Re: SinglePath games design
« en: Martes 14 de Octubre de 2003, 19:34 »
Ya mire tu pagina y hay muy buenos contenidos, eso si me perdonas pero de diseño si esta muy pobre.

En todo caso te invito a participar en el foro de manera activa, en especial en el foro de c/c++ y en el de porgramación de videojuegos.

Tambien y con el respeto que solocodigo se merece, quiero invitarte a participar en los foros especializados de programacion de videojuegos de teleportmedia, teleportmedia es una empresa que hace videojuegos y software multimedia.
http://www.teleportmedia.com

Un saludo.

4934
Publicaciones y e-books / Re: El Arte de Programar
« en: Martes 14 de Octubre de 2003, 19:26 »

4935
Dudas informáticas / Re: Ayuda urgente por favor !!!
« en: Martes 14 de Octubre de 2003, 19:24 »
dale click derecho al icnono de mipc e ingresa en la opcion administrar, una vez se abra el recuadro selecciona en el arbol de la izq. administrador de discos logicos, alli selecciona el disco que vas a trabajar y la particion que no vez, lo mas probable es que no tenga letra asignada asi que asignale una letra, tambien es probable que si tienes montado un sistema de disco dinamico, lo cual se puede hacer desde windows 200, tu particion este sin montar, asi que le das clik derecho a la particion y seleccionas la opcion... no se como es que decia pero debe ser montar o activar.

En ultima instancia y dao el caso que necesites reformatear, puedes hacerlo con traquilidad desde que no formatees a bajo nivel, primero debes consegur software para recuperacion de archivos, uno que se consigue por ahi en internet es el "easy recovery" y tambien el R-studio , aunque ese es más dificil.

Si necesitas el easy te lo puedo pasar, el rstudio no porque es más pesado.

Con estos szw puedes recuperaer los datois borrados aunqe hayas reparticionad, no siempre funciona pero tienes una altisima posibilidad de recuperar la totalidad o gran parte de la informacion.

4936
Dudas informáticas / Re: Ayuda urgente por favor !!!
« en: Martes 14 de Octubre de 2003, 19:23 »
dale click derecho al icnono de mipc e ingresa en la opcion administrar, una vez se abra el recuadro selecciona en el arbol de la izq. administrador de discos logicos, alli selecciona el disco que vas a trabajar y la particion que no vez, lo mas probable es que no tenga letra asignada asi que asignale una letra, tambien es probable que si tienes montado un sistema de disco dinamico, lo cual se puede hacer desde windows 200, tu particion este sin montar, asi que le das clik derecho a la particion y seleccionas la opcion... no se como es que decia pero debe ser montar o activar.

En ultima instancia y dao el caso que necesites reformatear, puedes hacerlo con traquilidad desde que no formatees a bajo nivel, primero debes consegur software para recuperacion de archivos, uno que se consigue por ahi en internet es el "easy recovery" y tambien el R-studio , aunque ese es más dificil.

Si necesitas el easy te lo puedo pasar, el rstudio no porque es más pesado.

4937
Dudas informáticas / OUTLOOK
« en: Martes 14 de Octubre de 2003, 19:16 »
debes buscatr unos archivos en tu sistema operativo, pero primero debemos saber que sistema operativo tienes, si es xp
sera por ejemplo en

C:Documents and Settingsjuan-ruizConfiguración localDatos de programaIdentities{5409DC5F-E83A-44E9-8DB1-EFDF9513413F}MicrosoftOutlook Express

el nombre del usuario, en este caso juan-ruiz, varia segun sea el nombre de tu usuario, la carpeta con el nombre larguisimo siempre cambia.

basta con que guardes todo el copntenido de esta carpeta y ya queda listo tu bakcup.

4938
Dudas informáticas / AYUDENME CON BORLAND C
« en: Martes 14 de Octubre de 2003, 19:12 »
debes cofigurar las propiedades de la ventana msdos psra eu acepte los parametros que requiere el copilador.. solo es cuesntion de que leas los errores que te arroja para asi reconfigurar la ventana de msdos.

Para configurarla, abres la ventana de msdos y presionas click derecho del mouse sobre la barra de titulo y escojes la opcion propiedades.

4939
Retos / Re: Protocolo Hdlc
« en: Martes 14 de Octubre de 2003, 17:46 »
Te falta validar cuando el receptor recive un frame que no corresponde a un entramado de bytes, en el transmisor parece que si lo tienes bien... por el momento es eso.. seguire revisando.

4940
C/C++ / Re: Implementando APIs
« en: Martes 14 de Octubre de 2003, 17:24 »
Existen los encabezados de la win API,  como el encabezado win.h, estos encabezados t sirven para usar las librerias que componen la API(es necesario que no confundas un encabezado con una libreria), lo primero que debes hacer es bajarte una versión de la WINAPI, alli encontraras algunos ejemplos que te serviran para comenzar, yo siempre recomiendo aprender primero a manejar la API desde un lenguaje sencillo como Visual Basic, y una vez hallas entendido lo básico pasarte a lenguaje c.

4941
C/C++ / Re: AGENDA
« en: Martes 14 de Octubre de 2003, 15:24 »
quisiera ayudarte pero ultimament no dispongo de mucho tiempo, asi que seria de gran ayuda si anotas que errores te salen.

4942
C/C++ / Re: LLAVES DE REGISTROS DE PROGRAMAS
« en: Martes 14 de Octubre de 2003, 14:45 »
hOLA,
HAY NMUCHAS MANERAS DE HACER ESO PERO POR EL MOMEBNTO SOLO TE EXPLICARE UNA.

Lo primer que debes hacer es que tu programa dependa del contendio de algun archivo en algun lugar del disco, entonces puedes hacer una condicion que te digar que si no encuentra dicho archivo no abra, esto garantizara que no se ejecute el programa en una maquina diferente.
Seguidamente si hay un archivo se debe leer su contenido, que de preferencia debe estar escrito en bytes y no en caracteres y con algun codigo de encriptamiento que te inventes, lees el contenido del archivo, y este debe corresponder con un codigfo existenmte internamente en el protrama paraque este lo asuma como un allave de registro, si el codigo es el mismo el programa funionara ilimitadamente, sino seguira contando los numero de dias desde su primera instalacion.. lo del numero de dias tambien lo puedes guardar en el archivo.

De este modi si alguien no tiene la clave le correra tiempo para que se inactive, y si la tiene, debvera insertarla en una pantalla del protrama, si corresponde esta quedara grabado en el archivo que lee el programa al inicio para que la proxima vez que se ejecute el programa, este encuentre el codigo de activacion encriptado en el archivo.
espero que te sea de ayuda-

4943
C# / Re: C#,PictureBox y manuales
« en: Lunes 13 de Octubre de 2003, 07:56 »
1- Al parecer no conoces mucho de programacion orientada a objetos, asi que si no aprender a hacerlo por consolo.. muy pero muy dificlmente lograras hacer una buena aplicación utilizando controles... esto no es Visual Basic, piensalo... porque todos los libros de nivel principiante e intermdio enseñan a crear aplicaciones por consola y no con controles de una vez?... los Autores saben lo que hacen.

2- El control picture box solo recibe para su imagen un objeto bitmap, o cualquier otro que herede de la clase Image (programacion orientada a objetos)
asi que para asignarlo debes utilizar su propiedad
 picturebox.Image
a la cual debes asignarle por ejemplo una instancia del objeto Bitmap o una nueva instancia de la misma, es decri puedes hacer esto:

picturebox.Image = new Bitmap("dibujo.bmp");
o bien

Bitmap bmp;
.....
....
picturebox.Image = bmp;

Una cosa importante es que si quieres aprnder a utilizar controles de windows en tus aplicaciones..y utilizas como editor el block de notas,.... definitivamente estas perdiendo tu tiempo.. por ejemplo esto me hubiese tocado hacer para una aplicacion que se viera como la imagen y sin que ningun control hiciera nada...:
 
Código: Text
  1.  
  2.         private System.Windows.Forms.PictureBox pbxSourceImg;
  3.         private System.Windows.Forms.Button btOpenImg;
  4.         private System.Windows.Forms.GroupBox grbImage;
  5.         private System.Windows.Forms.Button btSave;
  6.         private System.Windows.Forms.Button btSalir;
  7.         private System.Windows.Forms.Button btLoad;
  8.         private System.Windows.Forms.GroupBox grbParaters;
  9.         private System.Windows.Forms.ListView lvwFrameList;
  10.         private System.Windows.Forms.ColumnHeader left;
  11.         private System.Windows.Forms.ColumnHeader top;
  12.         private System.Windows.Forms.ColumnHeader nro;
  13.         private System.Windows.Forms.ColumnHeader witdh;
  14.         private System.Windows.Forms.ColumnHeader height;
  15.         private System.Windows.Forms.Label lblLeft;
  16.         private System.Windows.Forms.Label lblTop;
  17.         private System.Windows.Forms.Label lblWidth;
  18.         private System.Windows.Forms.Label lblHeight;
  19.         private System.Windows.Forms.Button btUpdate;
  20.         private System.Windows.Forms.Button btAdd;
  21.         private System.Windows.Forms.Label lblNameLvw;
  22.         private System.Windows.Forms.TextBox txtLeft;
  23.         private System.Windows.Forms.TextBox txtWidth;
  24.         private System.Windows.Forms.TextBox txtHeigth;
  25.         private System.Windows.Forms.TextBox txtTop;
  26.         private System.Windows.Forms.Button btDel;
  27.         private System.Windows.Forms.Button btClear;
  28.         private System.Windows.Forms.TextBox txtImagePath;
  29.         private System.Windows.Forms.SaveFileDialog saveFileDialog;
  30.         private System.Windows.Forms.OpenFileDialog openImgDialog;
  31.         private System.Windows.Forms.OpenFileDialog openFileDialog;
  32.  
  33.  
Código: Text
  1.  
  2.             this.pbxSourceImg = new System.Windows.Forms.PictureBox();
  3.             this.openImgDialog = new System.Windows.Forms.OpenFileDialog();
  4.             this.btOpenImg = new System.Windows.Forms.Button();
  5.             this.grbImage = new System.Windows.Forms.GroupBox();
  6.             this.txtImagePath = new System.Windows.Forms.TextBox();
  7.             this.btSave = new System.Windows.Forms.Button();
  8.             this.btSalir = new System.Windows.Forms.Button();
  9.             this.btLoad = new System.Windows.Forms.Button();
  10.             this.grbParaters = new System.Windows.Forms.GroupBox();
  11.             this.btClear = new System.Windows.Forms.Button();
  12.             this.btDel = new System.Windows.Forms.Button();
  13.             this.lblNameLvw = new System.Windows.Forms.Label();
  14.             this.btAdd = new System.Windows.Forms.Button();
  15.             this.btUpdate = new System.Windows.Forms.Button();
  16.             this.lblHeight = new System.Windows.Forms.Label();
  17.             this.lblWidth = new System.Windows.Forms.Label();
  18.             this.lblTop = new System.Windows.Forms.Label();
  19.             this.lblLeft = new System.Windows.Forms.Label();
  20.             this.txtHeigth = new System.Windows.Forms.TextBox();
  21.             this.txtWidth = new System.Windows.Forms.TextBox();
  22.             this.txtTop = new System.Windows.Forms.TextBox();
  23.             this.txtLeft = new System.Windows.Forms.TextBox();
  24.             this.lvwFrameList = new System.Windows.Forms.ListView();
  25.             this.nro = new System.Windows.Forms.ColumnHeader();
  26.             this.left = new System.Windows.Forms.ColumnHeader();
  27.             this.top = new System.Windows.Forms.ColumnHeader();
  28.             this.witdh = new System.Windows.Forms.ColumnHeader();
  29.             this.height = new System.Windows.Forms.ColumnHeader();
  30.             this.saveFileDialog = new System.Windows.Forms.SaveFileDialog();
  31.             this.openFileDialog = new System.Windows.Forms.OpenFileDialog();
  32.             this.grbImage.SuspendLayout();
  33.             this.grbParaters.SuspendLayout();
  34.             this.SuspendLayout();
  35.             //
  36.             // pbxSourceImg
  37.             //
  38.             this.pbxSourceImg.BackColor = System.Drawing.Color.Black;
  39.             this.pbxSourceImg.Location = new System.Drawing.Point(8, 16);
  40.             this.pbxSourceImg.Name = "pbxSourceImg";
  41.             this.pbxSourceImg.Size = new System.Drawing.Size(272, 280);
  42.             this.pbxSourceImg.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
  43.             this.pbxSourceImg.TabIndex = 0;
  44.             this.pbxSourceImg.TabStop = false;
  45.             //
  46.             // openImgDialog
  47.             //
  48.             this.openImgDialog.Filter = ""Imagen bmp"|*.bmp|"Imagen jpg"|*.jpg|"Imagen png"|*.png|"Imagen gif"|*.gif|"Imag" +
  49.                 "en tif"|*.tif|"Imagen jpg"|*.jpeg";
  50.             this.openImgDialog.InitialDirectory = ".*.*";
  51.             this.openImgDialog.ReadOnlyChecked = true;
  52.             this.openImgDialog.Title = "Abrir Imagen";
  53.             this.openImgDialog.FileOk += new System.ComponentModel.CancelEventHandler(this.openImgDialog_FileOk);
  54.             //
  55.             // btOpenImg
  56.             //
  57.             this.btOpenImg.Location = new System.Drawing.Point(8, 304);
  58.             this.btOpenImg.Name = "btOpenImg";
  59.             this.btOpenImg.Size = new System.Drawing.Size(40, 32);
  60.             this.btOpenImg.TabIndex = 13;
  61.             this.btOpenImg.Text = "Abrir";
  62.             this.btOpenImg.Click += new System.EventHandler(this.btOpenImg_Click);
  63.             //
  64.             // grbImage
  65.             //
  66.             this.grbImage.Controls.AddRang(new System.Windows.Forms.Control[]
  67. {
  68.    this.txtImagePath,
  69.    this.pbxSourceImg,
  70.    this.btOpenImg
  71. });
  72. this.grbImage.Location = new System.Drawing.Point(8, 8);
  73.             this.grbImage.Name = "grbImage";
  74.             this.grbImage.Size = new System.Drawing.Size(288, 344);
  75.             this.grbImage.TabIndex = 3;
  76.             this.grbImage.TabStop = false;
  77.             this.grbImage.Text = "Imagen";
  78.             //
  79.             // txtImagePath
  80.             //
  81.             this.txtImagePath.BorderStyle = System.Windows.Forms.BorderStyle.None;
  82.             this.txtImagePath.Location = new System.Drawing.Point(48, 304);
  83.             this.txtImagePath.Multiline = true;
  84.             this.txtImagePath.Name = "txtImagePath";
  85.             this.txtImagePath.ReadOnly = true;
  86.             this.txtImagePath.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
  87.             this.txtImagePath.Size = new System.Drawing.Size(232, 32);
  88.             this.txtImagePath.TabIndex = 14;
  89.             this.txtImagePath.Text = "%PATH%";
  90.             //
  91.             // btSave
  92.             //
  93.             this.btSave.Location = new System.Drawing.Point(416, 328);
  94.             this.btSave.Name = "btSave";
  95.             this.btSave.Size = new System.Drawing.Size(80, 24);
  96.             this.btSave.TabIndex = 11;
  97.             this.btSave.Text = "Guardar";
  98.             this.btSave.Click += new System.EventHandler(this.btSave_Click);
  99.             //
  100.             // btSalir
  101.             //
  102.             this.btSalir.DialogResult = System.Windows.Forms.DialogResult.Cancel;
  103.             this.btSalir.Location = new System.Drawing.Point(512, 328);
  104.             this.btSalir.Name = "btSalir";
  105.             this.btSalir.Size = new System.Drawing.Size(80, 24);
  106.             this.btSalir.TabIndex = 12;
  107.             this.btSalir.Text = "Salir";
  108.             this.btSalir.Click += new System.EventHandler(this.btSalir_Click);
  109.             //
  110.             // btLoad
  111.             //
  112.             this.btLoad.Location = new System.Drawing.Point(312, 328);
  113.             this.btLoad.Name = "btLoad";
  114.             this.btLoad.Size = new System.Drawing.Size(80, 24);
  115.             this.btLoad.TabIndex = 10;
  116.             this.btLoad.Text = "Cargar";
  117.             this.btLoad.Click += new System.EventHandler(this.btLoad_Click);
  118.             //
  119.             // grbParaters
  120.             //
  121.             this.grbParaters.Controls.AddRange(new System.Windows.Forms.Control[]
  122.  {
  123.    this.btClear,
  124.    this.btDel,
  125.    this.lblNameLvw,
  126.    this.btAdd,
  127.    this.btUpdate,
  128.    this.lblHeight,
  129.    this.lblWidth,
  130.    this.lblTop,
  131.    this.lblLeft,
  132.    this.txtHeigth,
  133.    this.txtWidth,
  134.    this.txtTop,
  135.    this.txtLeft,
  136.    this.lvwFrameList
  137. });
  138.             this.grbParaters.Location = new System.Drawing.Point(304, 8);
  139.             this.grbParaters.Name = "grbParaters";
  140.             this.grbParaters.Size = new System.Drawing.Size(304, 312);
  141.             this.grbParaters.TabIndex = 7;
  142.             this.grbParaters.TabStop = false;
  143.             this.grbParaters.Text = "Parámetros";
  144.             //
  145.             // btClear
  146.             //
  147.             this.btClear.Location = new System.Drawing.Point(160, 280);
  148.             this.btClear.Name = "btClear";
  149.             this.btClear.TabIndex = 9;
  150.             this.btClear.Text = "Limpiar lista";
  151.             this.btClear.Click += new System.EventHandler(this.btClear_Click);
  152.             //
  153.             // btDel
  154.             //
  155.             this.btDel.Location = new System.Drawing.Point(64, 280);
  156.             this.btDel.Name = "btDel";
  157.             this.btDel.Size = new System.Drawing.Size(88, 24);
  158.             this.btDel.TabIndex = 8;
  159.             this.btDel.Text = "Borrar registro";
  160.             this.btDel.Click += new System.EventHandler(this.btDel_Click);
  161.             //
  162.             // lblNameLvw
  163.             //
  164.             this.lblNameLvw.AutoSize = true;
  165.             this.lblNameLvw.Location = new System.Drawing.Point(8, 96);
  166.             this.lblNameLvw.Name = "lblNameLvw";
  167.             this.lblNameLvw.Size = new System.Drawing.Size(85, 13);
  168.             this.lblNameLvw.TabIndex = 6;
  169.             this.lblNameLvw.Text = "Lista de Frames";
  170.             //
  171.             // btAdd
  172.             //
  173.             this.btAdd.Location = new System.Drawing.Point(224, 32);
  174.             this.btAdd.Name = "btAdd";
  175.             this.btAdd.Size = new System.Drawing.Size(64, 24);
  176.             this.btAdd.TabIndex = 4;
  177.             this.btAdd.Text = "Agregar";
  178.             this.btAdd.Click += new System.EventHandler(this.btAdd_Click);
  179.             //
  180.             // btUpdate
  181.             //
  182.             this.btUpdate.Location = new System.Drawing.Point(224, 64);
  183.             this.btUpdate.Name = "btUpdate";
  184.             this.btUpdate.Size = new System.Drawing.Size(64, 24);
  185.             this.btUpdate.TabIndex = 5;
  186.             this.btUpdate.Text = "Actualizar";
  187.             this.btUpdate.Click += new System.EventHandler(this.btUpdate_Click);
  188.             //
  189.             // lblHeight
  190.             //
  191.             this.lblHeight.AutoSize = true;
  192.             this.lblHeight.Location = new System.Drawing.Point(112, 68);
  193.             this.lblHeight.Name = "lblHeight";
  194.             this.lblHeight.Size = new System.Drawing.Size(37, 13);
  195.             this.lblHeight.TabIndex = 12;
  196.             this.lblHeight.Text = "Heigth";
  197.             //
  198.             // lblWidth
  199.             //
  200.             this.lblWidth.AutoSize = true;
  201.             this.lblWidth.Location = new System.Drawing.Point(112, 36);
  202.             this.lblWidth.Name = "lblWidth";
  203.             this.lblWidth.Size = new System.Drawing.Size(33, 13);
  204.             this.lblWidth.TabIndex = 11;
  205.             this.lblWidth.Text = "Width";
  206.             //
  207.             // lblTop
  208.             //
  209.             this.lblTop.AutoSize = true;
  210.             this.lblTop.Location = new System.Drawing.Point(16, 68);
  211.             this.lblTop.Name = "lblTop";
  212.             this.lblTop.Size = new System.Drawing.Size(24, 13);
  213.             this.lblTop.TabIndex = 10;
  214.             this.lblTop.Text = "Top";
  215.             //
  216.             // lblLeft
  217.             //
  218.             this.lblLeft.AutoSize = true;
  219.             this.lblLeft.Location = new System.Drawing.Point(16, 36);
  220.             this.lblLeft.Name = "lblLeft";
  221.             this.lblLeft.Size = new System.Drawing.Size(23, 13);
  222.             this.lblLeft.TabIndex = 9;
  223.             this.lblLeft.Text = "Left";
  224.             //
  225.             // txtHeigth
  226.             //
  227.             this.txtHeigth.AutoSize = false;
  228.             this.txtHeigth.Location = new System.Drawing.Point(152, 64);
  229.             this.txtHeigth.MaxLength = 4;
  230.             this.txtHeigth.Name = "txtHeigth";
  231.             this.txtHeigth.Size = new System.Drawing.Size(56, 20);
  232.             this.txtHeigth.TabIndex = 3;
  233.             this.txtHeigth.Text = "";
  234.             this.txtHeigth.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txt_KeyPress);
  235.             this.txtHeigth.Leave += new System.EventHandler(this.txt_Leave);
  236.             this.txtHeigth.Enter += new System.EventHandler(this.txt_Enter);
  237.             //
  238.             // txtWidth
  239.             //
  240.             this.txtWidth.AutoSize = false;
  241.             this.txtWidth.Location = new System.Drawing.Point(152, 32);
  242.             this.txtWidth.MaxLength = 4;
  243.             this.txtWidth.Name = "txtWidth";
  244.             this.txtWidth.Size = new System.Drawing.Size(56, 20);
  245.             this.txtWidth.TabIndex = 2;
  246.             this.txtWidth.Text = "";
  247.             this.txtWidth.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txt_KeyPress);
  248.             this.txtWidth.Leave += new System.EventHandler(this.txt_Leave);
  249.             this.txtWidth.Enter += new System.EventHandler(this.txt_Enter);
  250.             //
  251.             // txtTop
  252.             //
  253.             this.txtTop.AutoSize = false;
  254.             this.txtTop.Location = new System.Drawing.Point(48, 64);
  255.             this.txtTop.MaxLength = 4;
  256.             this.txtTop.Name = "txtTop";
  257.             this.txtTop.Size = new System.Drawing.Size(56, 20);
  258.             this.txtTop.TabIndex = 1;
  259.             this.txtTop.Text = "";
  260.             this.txtTop.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txt_KeyPress);
  261.             this.txtTop.Leave += new System.EventHandler(this.txt_Leave);
  262.             this.txtTop.Enter += new System.EventHandler(this.txt_Enter);
  263.             //
  264.             // txtLeft
  265.             //
  266.             this.txtLeft.AutoSize = false;
  267.             this.txtLeft.BackColor = System.Drawing.SystemColors.Window;
  268.             this.txtLeft.Location = new System.Drawing.Point(48, 32);
  269.             this.txtLeft.MaxLength = 4;
  270.             this.txtLeft.Name = "txtLeft";
  271.             this.txtLeft.Size = new System.Drawing.Size(56, 20);
  272.             this.txtLeft.TabIndex = 0;
  273.             this.txtLeft.Text = "";
  274.             this.txtLeft.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txt_KeyPress);
  275.             this.txtLeft.Leave += new System.EventHandler(this.txt_Leave);
  276.             this.txtLeft.Enter += new System.EventHandler(this.txt_Enter);
  277.             //
  278.             // lvwFrameList
  279.             //
  280.             this.lvwFrameList.Activation = System.Windows.Forms.ItemActivation.TwoClick;
  281.             this.lvwFrameList.AutoArrange = false;
  282.             this.lvwFrameList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[]
  283. {
  284.    this.nro,
  285.    this.left,
  286.    this.top,
  287.    this.witdh,
  288.    this.height
  289. });
  290.             this.lvwFrameList.FullRowSelect = true;
  291.             this.lvwFrameList.GridLines = true;
  292.             this.lvwFrameList.HideSelection = false;
  293.             this.lvwFrameList.LabelEdit = true;
  294.             this.lvwFrameList.Location = new System.Drawing.Point(8, 112);
  295.             this.lvwFrameList.MultiSelect = false;
  296.             this.lvwFrameList.Name = "lvwFrameList";
  297.             this.lvwFrameList.Size = new System.Drawing.Size(288, 160);
  298.             this.lvwFrameList.TabIndex = 7;
  299.             this.lvwFrameList.View = System.Windows.Forms.View.Details;
  300.             this.lvwFrameList.Click += new System.EventHandler(this.lvwFrameList_Click);
  301.             //
  302.             // nro
  303.             //
  304.             this.nro.Text = "Nro.";
  305.             this.nro.Width = 40;
  306.             //
  307.             // left
  308.             //
  309.             this.left.Text = "Left";
  310.             this.left.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
  311.             //
  312.             // top
  313.             //
  314.             this.top.Text = "Top";
  315.             this.top.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
  316.             //
  317.             // witdh
  318.             //
  319.             this.witdh.Text = "Widht";
  320.             this.witdh.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
  321.             //
  322.             // height
  323.             //
  324.             this.height.Text = "Height";
  325.             this.height.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
  326.             //
  327.             // saveFileDialog
  328.             //
  329.             this.saveFileDialog.DefaultExt = "*.jki";
  330.             this.saveFileDialog.Filter = ""Imagen de JuanK"|*.jki";
  331.             this.saveFileDialog.InitialDirectory = ".";
  332.             this.saveFileDialog.Title = "Guardar Archivo";
  333.             this.saveFileDialog.FileOk += new System.ComponentModel.CancelEventHandler(this.saveFileDialog_FileOk);
  334.             //
  335.             // openFileDialog
  336.             //
  337.             this.openFileDialog.DefaultExt = "bmp";
  338.             this.openFileDialog.Filter = ""Imagen de Juank"|*.jki";
  339.             this.openFileDialog.InitialDirectory = ".";
  340.             this.openFileDialog.ReadOnlyChecked = true;
  341.             this.openFileDialog.Title = "Abrir Imagen bmp";
  342.             this.openFileDialog.FileOk += new System.ComponentModel.CancelEventHandler(this.openFileDialog_FileOk);
  343.             //
  344.             // FrmConverter
  345.             //
  346.             this.AcceptButton = this.btAdd;
  347.             this.AutoScale = false;
  348.             this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
  349.             this.CancelButton = this.btSalir;
  350.             this.ClientSize = new System.Drawing.Size(616, 365);
  351.             this.Controls.AddRange(new System.Windows.Forms.Control[]
  352. {
  353.    this.grbParaters,
  354.    this.btLoad,
  355.    this.btSalir,
  356.    this.btSave,
  357.    this.grbImage
  358. });
  359.             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
  360.             this.MaximizeBox = false;
  361.             this.Name = "FrmConverter";
  362.             this.Text = "Convertidor de formato de imagen";
  363.             this.grbImage.ResumeLayout(false);
  364.             this.grbParaters.ResumeLayout(false);
  365.             this.ResumeLayout(false);
  366.  
  367.  
Este codigo de inicializacion de los componentes lo genero el editor de visual studio .net.

si quieres un buen libro para aprender a programar de VERDAD, asi empezando te toque en modo consola, visita el link que coloqué en publicaciones y ebooks, alli encontraras más material.

4944
C# / Re: ContextMenu en C#
« en: Viernes 10 de Octubre de 2003, 20:00 »
porque no lo he hecho, pero lo mas seguro es que debas utilizar un control imagelist y luego alguna propiedad del context menu hara que puedas asociarlo a ese imagelist.

4945
Retos / Re: Protocolo Hdlc
« en: Viernes 10 de Octubre de 2003, 14:34 »
si no comienza con bandera no es una trama hdlc, el usuario nunca sabe que sucede pordebajo co hdlc, asi que no necesita saber que se hizo lo del bit stuffingm solo reportar los errores que se salgan del control del protocolo, si tu protocolo lo detecta como error y no le puede poner remedio.. hjay que informarlo.

4946
Retos / Re: Protocolo Hdlc
« en: Viernes 10 de Octubre de 2003, 00:01 »
1-La unidad minima que puede representar de informacion en un computador es el byte, asi que tres bits no son una unidad de infromacion, por tanto no puede ser transmitida ni recibida.
 
Citar
...tenga en cuenta que el último frame puede ser de menos de 128 bit, puede asumir que el tamaño del archivo de entrada es múltiplo de 8.


Lo de los errores,, no te lo debo decir, debes controlar todo lo que sea posible, porejemplo lo que me acabas de decir de los 3 bit es un error.. hayuno pocos más pero los deberas determinar tu mismo, porque es parte del reto.

4947
Retos / Re: Protocolo Hdlc
« en: Jueves 9 de Octubre de 2003, 19:05 »
no, por lo menos yo tuve esa duda pero como no hay que hacer lo que no se pide, entonces es de una unica linea.

4948
Retos / Re: Protocolo Hdlc
« en: Jueves 9 de Octubre de 2003, 16:44 »
Lo de la entrada de datos por argumentos lo adicione al segundo dia de publicado el reto, solo por aclarar porque ya estaba implicito en el texto.

Lo que siempre se ha dicho es que ambos programas reciben entrada por archivo y salida por pantalla no?:kicking::think:
Es decir, no se ha mencionado que la salida del primer programa deba ser redireccionada al segundo.. por eso son dos programas aparte.

Se hiso asi para facilitar la evalucion del programa , ya que es más facil verficar la salida por pantalla que en un archivo, y a la vez es más facil que la entrada este en un archivo de texto, a que toque digitarla por stdin.

4949
C/C++ / Re: Necesito el juego de undir la flota en lenguaje C
« en: Jueves 9 de Octubre de 2003, 14:45 »
Debes determinar estados,
es decir tienes un array que puede ser el barco y puedes decir que el numero de casillas del array es 4 y que si el 4 campo es null, entonces que si el 4 campo es null, es que recibio un golpe, si el tercero tambien es otro golpe , y asi hasta llegar alprimer, en cuyo caso diras que si el campo1 es null es barco esta undido.

para moverlo, podrias utilizar otros campos del array por cada barco que te indiquen la posicion en x y la posicion en y del barco, de este modo para dibujarlos solo seria necesario leer estos campos de cada barco y dibujarlos en pantalla con la funcion gotoxy.

ejemplo

barco de 4 golpes:

primer campo = posicion en x
segundo campo = posicion en y
tercer a 6 campo(4 campos)= estado de impactos.

para dibujarlo...

gotoxy(barco[0], barco[1]);//ubicar el cursor de pantall..luego lo imprimes en pantalla.

para recibir un disparo.. por ejemplo el primero:

barco[5] = null;//o al numero que quierasque represente el impacto.

cuando se unda :
barco[2] =null//el ultimo campo de disparos se vuelve null, entonces es barco undido.

Suerte.

4950
Retos / Re: Protocolo Hdlc
« en: Jueves 9 de Octubre de 2003, 14:23 »
Bueno, el enunciado esta bien.. porque como te comente esta transcrito de la olimpiada nacional de programación.

Ahora lo del ejemplo si esta mal digitado.. me comi un 1:P

Gracias por fijarte, ya lo corregi, se nota que si has entendido el programa!!!

Me alegro, suerte y continua.

Ahh si si encuentras otra cosita(espero que no), me cuentas please.

Páginas: 1 ... 196 197 [198] 199 200 ... 231