Debido a que Delphi adopta un enfoque verdaderamente completamente orientado a objetos, el compilador más rápido del mundo en la actualidad y tecnología de base de datos líder, especialmente su total compatibilidad con la API de Windows y excelentes capacidades de generación automática de código... la gente ha visto eso en poco tiempo. ¡En los últimos años, Delphi se ha destacado entre muchas herramientas de desarrollo! Son las excelentes cualidades de Delphi las que permiten a los programadores desarrollar software de aplicaciones de nivel profesional en un corto período de tiempo, ¡con muy poco trabajo!
Como dice el refrán, ¡mejoremos! ¿Cómo deberíamos aprovechar al máximo las ventajas de Delphi para diseñar programas más rápidamente?
1. Aproveche al máximo el código compartido completo (Jubang):
El propósito de esto no es solo ser "vago", sino también una forma de optimizar el código del programa. Por supuesto, lo primero que hay que considerar es si se puede compartir (esto es muy sencillo, mira si está incluido en la colección desplegable del evento), y lo segundo a lo que hay que prestar atención es si habrá " "problemas" después de compartir, porque la corrección es el primer paso. ¡Es necesario buscar la optimización solo cuando se garantiza que será correcto!
Por ejemplo: damos un mensaje de confirmación antes de que el usuario elimine datos:
Procedimiento TForm1.Table1BeforeDelete(DataSet: TDataSet);
comenzar
//Confirmar registro de eliminación
si MessageBox(handle,'¿Está seguro de que desea eliminar el registro actual?','Confirmar',MB_IconQuestion+MB_YesNo)=IDNO entonces
Abortar;
fin;
Luego, siempre que esté dispuesto a permitir que el usuario confirme antes de eliminar el registro de datos, puede compartir completamente este código en el evento TDataSet.BeforeDelete (BeforeDelete de Table2, BeforeDelete de Table3...). La buena suerte no ocurre todos los días, a veces no es tan directa y sencilla...
La palabra "As" no sólo es extremadamente útil en inglés, ¡sino también en Delphi! Esto entra en juego cuando queremos compartir código para varios componentes "similares": sólo necesitamos escribir código para uno de ellos.
Por ejemplo, si queremos que el color de fondo de un grupo de cuadros de edición de texto cambie a marrón cuando reciben el foco de entrada y restaurar el color del sistema cuando pierden el foco, podemos compartir el código de esta manera (dejar que los eventos de cada uno cuadro de edición de texto comparte el siguiente código):
procedimiento TForm1.Edit1Enter(Remitente: TObject);
comenzar
(Remitente como TEdit).color:=ClTeal //Obtener foco de entrada.
fin;
procedimiento TForm1.Edit1Exit(Remitente: TObject);
comenzar
(Remitente como TEdit).color:=ClWindow; //Se perdió el foco de entrada.
fin;
El ejemplo anterior parece demasiado específico. ¿Qué pasa si sólo presto especial atención a algunos de los componentes? Siguiendo con el ejemplo anterior, por ejemplo, hay dos cuadros de entrada de texto que requieren que se ingresen números para atraer la atención del usuario, el color cambia a azul cuando se recibe el foco, pero todavía no quiero escribir. código para cada componente por separado.
Para resolver este problema, puede utilizar el atributo Etiqueta del componente. Primero, asigne etiquetas distintas de cero y desiguales a los componentes que se van a procesar especialmente (debe tenerse en cuenta que Delphi no comprobará si los valores de las etiquetas son iguales). y debes controlarlo tú mismo durante el diseño); luego escribe el código de la siguiente manera. Aún puedes compartirlo:
procedimiento TForm1.Edit1Enter(Remitente: TObject);
comenzar
caso (Remitente como TEdit). Etiqueta de
10,20:(Remitente como TEdit).Color:=clBlue //Cuadro de texto para ingresar números
demás
(Remitente como TEdit).Color:=clTeal //Otros cuadros de texto.
fin;
fin;
(Se supone que las siguientes observaciones se realizan según las condiciones predeterminadas de Delphi)
1. Utilice la palabra clave Self:
¡Quizás alguien piense que estoy equivocado! De hecho, lo que quiero presentarles aquí es otro "truco" del "delincuente habitual" del autor (debido a su mala memoria). A veces, es posible que no podamos recordar el nombre exacto del componente. En este momento, si regresa al formulario para confirmarlo nuevamente (la mayoría de mis amigos deberían ser así), sería una lástima. Ahorra mucho tiempo si usa Self, porque Self en Delphi se refiere explícitamente al formulario donde se encuentra el componente. Por lo tanto, podemos ingresar Self seguido de una coma para activar el Código de Delphi. Al finalizar, el sistema mostrará inmediatamente una lista desplegable que contiene todos los componentes del formulario y las propiedades del formulario en sí, desde donde puede seleccionar los componentes requeridos. De esta manera, se evita la carga de trabajo de alternar entre formularios y tablas.
2. Utilice la finalización de código (finalización de código):
Ya no tenemos que recordar demasiados detalles de parámetros gracias a la función de llenado de código de Delphi. Antes de explicarlo en detalle, quiero ser un poco prolijo. Las teclas de método abreviado predeterminadas de Finalización de código de Delphi entrarán en conflicto con algunas de las teclas de método abreviado que hemos utilizado (por ejemplo, Ctrl+Espacio entra en conflicto con las teclas de método abreviado para abrir y cerrar). método de entrada de caracteres chinos). Por lo tanto, resuelva este problema primero.
Por supuesto, la finalización de código generalmente se activará automáticamente, pero no crea que todo estará bien. Creo que Delphi debería aprender de VB sobre esta tecnología. Por ejemplo: cuando ingresa StrToint(edit1., Delphi no mostrará automáticamente las propiedades de edit1. En este momento, usará Ctrl+Espacio para activar la finalización de código. Especialmente cuando el anidamiento es profundo, Delphi parece confundido.
3. Utilice parámetros de código:
La tecla de acceso directo de activación es Ctrl+Shift+Espacio. Esta función también la implementa automáticamente Delphi. Como se mencionó anteriormente, cuando cambiamos hacia adelante y hacia atrás o movemos el cursor, esta función desaparecerá. Cuando necesitemos confirmar los parámetros específicos de la función, podemos abrirla con esta tecla de acceso directo. .
4. Utilice plantillas de código:
¡Esta tecnología refleja una vez más la excelente tecnología de los ingenieros del equipo de desarrollo Delphi de Inprise y su noble carácter moral de pensar siempre en los usuarios! (Simplemente no quiero oír hablar de Microsoft cazando furtivamente a otra persona)
La tecla de acceso directo de activación es Ctrl+J. El mecanismo de implementación de esta función es similar al del llenado de código, excepto que no es automático. Por supuesto, el aspecto más interesante es que los usuarios pueden definir sus propias plantillas. Por ejemplo, una plantilla definida por el autor: acceso directo -> "msg code" -> "MessageboxMessageBox(
handle,'|',',MB_Icon...+MB_...);", tan pronto como ingreso msg y luego presiono Ctrl+J, todo el código "se destaca" y mueve el cursor al lugar donde Debería agregar la entrada, ¡es genial!
Nota: Si ha definido muchas plantillas lindas y no está dispuesto a desecharlas, también puede hacer una copia de seguridad del archivo Delphi32.dci en el directorio Delphi4Bin y sobrescribirlo con este archivo después de reinstalar Delphi.
Este tema no debería escribirse aquí, pero no puedo evitar...
1. Si puede usar el observador de objetos para configurarlo directamente sin afectar el funcionamiento normal del programa, no es necesario escribir código:
Dado que este tema es demasiado amplio, aquí hay sólo un ejemplo: por ejemplo, desea implementar mensajes automáticos en la barra de estado en Delphi4 sin ser demasiado "duro".
Condición de "pista", ya no necesitamos definir un proceso (ShowMyHint(...)) como antes, y luego inicializarlo donde el programa
Asigne su valor al evento OnHin de Tapplication. ¡Porque simplemente establezca la propiedad AutoHint de la barra de estado en Verdadero! Por supuesto, parece que ella sólo puede
Se muestra en el primer Panel (esto es cuando no hay condiciones demasiado "duras"). Por supuesto, cúlpenme por hablar mucho, algunos amigos no conocen la pista de Delphi.
Los atributos se componen de dos partes. Este no es el lugar para hablar. Si está interesado, vaya a la página de inicio personal del autor www.zg169.net/~delphiok (recién abierta).
Zhang, todavía no hay muchas cosas).
2. Guardar código:
Si puede escribir menos código, no es necesario escribir más código. Si puede refinarlo, no es necesario que sea redundante:
Por ejemplo, los siguientes dos fragmentos de código implementan exactamente la misma función. ¿Qué fragmento prefiere utilizar?
Fragmento de código uno:
si ToolButton1.Down=true entonces
comenzar
Dbgrid1.show;
DelBtn.Enabled:=verdadero;
fin
demás
comenzar
Dbgrid1.Ocultar;
DelBtn.Enabled:=falso;
fin;
Fragmento de código dos:
Dbgrid1.Visible:=ToolButton1.Down;
DelBtn.Enabled:=ToolButton1.Down;
Por lo tanto, una vez que terminemos de escribir el programa, no solo debemos realizar ajustes, sino también freír el código del programa.
3. Guardar variables:
Algunos programadores definen variables donde no son necesarias y definen variables redundantes donde son necesarias. Personalmente, creo que esto no es bueno.
Los hábitos, especialmente el hábito de definir variables globales en todo momento, son aún más cuestionables. Algunos lectores pueden pensar que soy un avaro. Las velocidades del procesador actual lo son.
Qué época es... Pero simplemente te mostraré un fragmento de código y lo entenderás:
procedimiento TForm1.Button1Click(Remitente: TObject);
Var s1,s2:Cadena;
comenzar
s1:=Inputbox('datos','Ingrese el nombre de usuario',');
si s1<>' entonces
comenzar
Btn_Name.Enabled:=Verdadero;
s2:=Inputbox('datos','Ingrese la dirección del usuario',');
si s2<>' entonces
Btn_Adress.Enabled:=Verdadero;
fin;
fin;