Componente de confusión? trate de plantillas!


El Perpetuo Novato Entrada de Diario #3.1
Este artículo apareció por primera vez en http://www.undu.com
la reutilización de Código. El mantra de todos Delphi programadores de cualquier nivel de experiencia. No re-inventar la rueda. Comprar este componente de terceros o que de la biblioteca y el programa felizmente después de cada. Y si usted no puede o no comprar, construir su propio.
Y así lo hice. Mi primer componente era un simple TLabel descendiente que vino transparente y ajustado a Arial Negrita desde el principio. Un componente simple y un gran ahorro de tiempo. Además TLblArialB, también he creado un TLblTimesB a lo largo de las mismas líneas. Yo los uso todo el tiempo.
Con experiencia proviene de la ambición. Quería crear compuesto de componentes. En particular, quería un cuadro de Entrada variante que sería el número específico. Yo quería que el diálogo tiene una variable de leyenda y símbolo de la propiedad, un mínimo y un máximo para el control de giro y quería asInteger y asString propiedades de estilo. La inmersión en libros por tanto Ray Konopka y Marco Cantu, yo era capaz de conseguir una versión de la componente en funcionamiento. Pero como muchos de nosotros, mi ambición se había excedido en mis habilidades.
Hay signos preocupantes. La primera vez que me encontré con el componente en un programa de prueba, el cuadro de diálogo ocurrió con la espera de la selección de la entrada numérica de campo. Pero el segundo tiempo, el botón ACEPTAR fue el seleccionado de control y la tercera vez fue en el botón Cancelar. Obviamente, yo era una fuga de memoria o no la destrucción de mi pequeño objeto correctamente. Yo no podía confiar en el componente en la vida real. Me recogido en el TInputDlgInt código ocasionalmente durante las próximas semanas.
Pero, a continuación, un casual re-lectura de Cantu del libro me dio causa a golpear mi frente y gritar '¡Eureka!' Aunque no es tan elegante, tuve un tiempo y costo efectiva alternativa para el desarrollo del cuadro de diálogo, simplemente robar de mi PROPIO código con una plantilla de componente. Y la creación no podría ser más fácil. Llamé a uno de mis programas anteriores con un trabajo de la mano-empedradas versión del cuadro de diálogo. He seleccionado TODOS los elementos en el formulario y, a continuación, fue a COMPONENTES|COMPONENTE de creación de la PLANTILLA en el menú. Yo acepte la ubicación predeterminada en la paleta de Plantillas y cambiar el icono a un mapa de bits había diseñado para mi preciosa TInputDlgInt componente. He cambiado el nombre por defecto de TLabelTemplate a TInputIntTemplate y pulse OK. Mi creatividad magia requisitos llegaban a su fin.

En mi actual proyecto, he creado un nuevo formulario denominado FInputDlgInt para llamar desde el formulario principal. Fui a la plantilla de la paleta y la arrastró de la nueva marca de TInputIntTemplate a la forma y al instante llena el formulario con TODOS mis cuidadosamente los objetos creados. Yo podría haber cambiado el texto a lo que yo iba a usar en el programa, pero he dejado todo sin cambios.
En mi programa principal, he creado un código de visión plantilla que me llama IdlgI. Fue:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp FInputDlgInt := TFInputDlgInt.create(nil)
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp con FInputDlgInt empiezan
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp caption := '|'
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp LblPrompt.caption := '
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp eInput.Mínimo := 0
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp eInput.Máximo := 0
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp intentar showmodal
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp // Guardar los valores que aquí se necesitan
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp finalmente libre
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
necesidad de guardar el formulario en una biblioteca común de la carpeta en lugar de la carpeta de la aplicación. Ahora tengo la cosa más cercana a un componente que puedo desear, sin mucho esfuerzo. Seguro de que me gustaría resolver las fallas en mi propio componente. Y yo, en el tiempo. Pero mientras tanto, tengo la reutilización de código. Y eso es tiempo y dinero-maker.
cabe señalar que el uso de una biblioteca común formulario colocado en una ubicación central es un ejemplo de código para su reutilización sin la necesidad de la creación de un componente o incluso una plantilla. Eso es debido a que este ejemplo fue un auto-suficiente de diálogo. Sin embargo, tener la plantilla disponible me permite crear el mismo efecto en un panel en un formulario. Y por otro compuesto creaciones, tales como una barra de botones con los correspondientes cuadros de diálogo para realizar una variedad de tareas, el componente de la plantilla es una forma rápida de obtener la mayoría del trabajo pesado de hacer, sin tener que preocuparse todos los bits y piezas refinado para cualquiera que sea tu estilo de programación requiere.
& nbsp & nbsp & nbsp & nbsp Gary Mugford
& nbsp & nbsp & nbsp & nbsp Idea Mecánico Inc
& nbsp & nbsp & nbsp & nbsp Bramalea EN Canadá









Componente de confusion? trate de plantillas!


Componente de confusion? trate de plantillas! : Multi-millones de consejos para hacer su vida mas facil.


El Perpetuo Novato Entrada de Diario #3.1
Este articulo aparecio por primera vez en http://www.undu.com
la reutilizacion de Codigo. El mantra de todos Delphi programadores de cualquier nivel de experiencia. No re-inventar la rueda. Comprar este componente de terceros o que de la biblioteca y el programa felizmente despues de cada. Y si usted no puede o no comprar, construir su propio.
Y asi lo hice. Mi primer componente era un simple TLabel descendiente que vino transparente y ajustado a Arial Negrita desde el principio. Un componente simple y un gran ahorro de tiempo. Ademas TLblArialB, tambien he creado un TLblTimesB a lo largo de las mismas lineas. Yo los uso todo el tiempo.
Con experiencia proviene de la ambicion. Queria crear compuesto de componentes. En particular, queria un cuadro de Entrada variante que seria el numero especifico. Yo queria que el dialogo tiene una variable de leyenda y simbolo de la propiedad, un minimo y un maximo para el control de giro y queria asInteger y asString propiedades de estilo. La inmersion en libros por tanto Ray Konopka y Marco Cantu, yo era capaz de conseguir una version de la componente en funcionamiento. Pero como muchos de nosotros, mi ambicion se habia excedido en mis habilidades.
Hay signos preocupantes. La primera vez que me encontre con el componente en un programa de prueba, el cuadro de dialogo ocurrio con la espera de la seleccion de la entrada numerica de campo. Pero el segundo tiempo, el boton ACEPTAR fue el seleccionado de control y la tercera vez fue en el boton Cancelar. Obviamente, yo era una fuga de memoria o no la destruccion de mi pequeño objeto correctamente. Yo no podia confiar en el componente en la vida real. Me recogido en el TInputDlgInt codigo ocasionalmente durante las proximas semanas.
Pero, a continuacion, un casual re-lectura de Cantu del libro me dio causa a golpear mi frente y gritar '¡Eureka!' Aunque no es tan elegante, tuve un tiempo y costo efectiva alternativa para el desarrollo del cuadro de dialogo, simplemente robar de mi PROPIO codigo con una plantilla de componente. Y la creacion no podria ser mas facil. Llame a uno de mis programas anteriores con un trabajo de la mano-empedradas version del cuadro de dialogo. He seleccionado TODOS los elementos en el formulario y, a continuacion, fue a COMPONENTES|COMPONENTE de creacion de la PLANTILLA en el menu. Yo acepte la ubicacion predeterminada en la paleta de Plantillas y cambiar el icono a un mapa de bits habia diseñado para mi preciosa TInputDlgInt componente. He cambiado el nombre por defecto de TLabelTemplate a TInputIntTemplate y pulse OK. Mi creatividad magia requisitos llegaban a su fin.

En mi actual proyecto, he creado un nuevo formulario denominado FInputDlgInt para llamar desde el formulario principal. Fui a la plantilla de la paleta y la arrastro de la nueva marca de TInputIntTemplate a la forma y al instante llena el formulario con TODOS mis cuidadosamente los objetos creados. Yo podria haber cambiado el texto a lo que yo iba a usar en el programa, pero he dejado todo sin cambios.
En mi programa principal, he creado un codigo de vision plantilla que me llama IdlgI. Fue:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp FInputDlgInt := TFInputDlgInt.create(nil)
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp con FInputDlgInt empiezan
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp caption := '|'
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp LblPrompt.caption := '
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp eInput.Minimo := 0
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp eInput.Maximo := 0
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp intentar showmodal
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp // Guardar los valores que aqui se necesitan
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp finalmente libre
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
necesidad de guardar el formulario en una biblioteca comun de la carpeta en lugar de la carpeta de la aplicacion. Ahora tengo la cosa mas cercana a un componente que puedo desear, sin mucho esfuerzo. Seguro de que me gustaria resolver las fallas en mi propio componente. Y yo, en el tiempo. Pero mientras tanto, tengo la reutilizacion de codigo. Y eso es tiempo y dinero-maker.
cabe señalar que el uso de una biblioteca comun formulario colocado en una ubicacion central es un ejemplo de codigo para su reutilizacion sin la necesidad de la creacion de un componente o incluso una plantilla. Eso es debido a que este ejemplo fue un auto-suficiente de dialogo. Sin embargo, tener la plantilla disponible me permite crear el mismo efecto en un panel en un formulario. Y por otro compuesto creaciones, tales como una barra de botones con los correspondientes cuadros de dialogo para realizar una variedad de tareas, el componente de la plantilla es una forma rapida de obtener la mayoria del trabajo pesado de hacer, sin tener que preocuparse todos los bits y piezas refinado para cualquiera que sea tu estilo de programacion requiere.
& nbsp & nbsp & nbsp & nbsp Gary Mugford
& nbsp & nbsp & nbsp & nbsp Idea Mecanico Inc
& nbsp & nbsp & nbsp & nbsp Bramalea EN Canada


Componente de confusión? trate de plantillas!

Componente de confusión? trate de plantillas! : Multi-millones de consejos para hacer su vida más fácil.
Recommander aux amis
  • gplus
  • pinterest

Comentario

Dejar un comentario

Clasificación