Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-12-2006
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Gracias Lepe

Lepe gracias por responder... la verdad es que a tu código lo voy entiendo y tiene sentido. Eso si, hay algo que no me cierra:

Cita:
Empezado por Lepe
La herencia visual desde cero. Creas una ventana llamada BaseForm: (file -> New -> Form)
(....)
Ahora como bien dices, vas a File -> new -> other -> forms -> heredar de (tbaseForm)
Entiendo como se hace la herencia visual... pero, a mi entender, en esta forma de crear la ventana BaseForm al momento de "guardarla" lo hace dentro de un proyecto específico (puede que esté equivocado) por poner un ejemplo: Project1.dpr
Por tanto... cuando uno realiza File -> New -> other -> forms toma las formas presentes en el proyecto... en este caso Project1.dpr

Mi intenciòn es tener una clase genérica, y no que quede guardada en un proyecto en particular.

Si me puedes aclarar esa duda... a lo mejor pueda apreciar mejor las alternativas.

El código que había puesto en un anterior post era como una práctica... en los primeros días en que me senté frente a Delphi. Si es cierto que tiene funciones que son inútiles mantenerlas Ahora lo se... le saqué el polvo al disco duro... y apareció. La verdad es que la usaba cuando hacia mis prácticas para la facu y aplicaciones chicas.

Lo que pasa es que ando viendo como mejorar esto del tratamiento de ventanas para que se me facilite la vida.... tengo que empezar a meter código para mi tesis... y después de unos análisis me di cuenta de que va tener bastantes pantallas... y tener una libreria como esa... por dios.... ¡necesito algo mejor!
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #2  
Antiguo 12-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 23
Gydba Va por buen camino
Buenas y santas,

Pare ser completamente honesto no entendí del todo cuál es el hilo de la cuestión. Si ahora hablamos de crear clases pues bueno, tranquilamente podrías en una unit definir una clase heredada de un TCustomForm o TForm con las propiedades, métodos y funciones que quieras. Luego al añadir un formulario nuevo no hace falta hacer mucho más que añadir la unit de tu TCustomFormX generado a las uses y reemplazar la definición TForm por TCustomFormX. Evidentemente olvidate de que en el diseñador de objetos dentro del Delphi veas tus nuevas definiciones, pero de ésta manera no necesitás añadirla al IDE, sino en donde lo vayas a utilizar como un unit más. (mepa que hasta yo me perdí, sino se entendió me avisan )

Código Delphi [-]
type TCustomFormX = class(TForm)
private
   strPropiedad1 : String;
   ...
   strPropiedadN : String;
published
   property Propiedad1 : String read strPropiedad1 write strPropiedad1;
   ...
   property PropiedadN : String read strPropiedad1 write strPropiedadN;
end;
No hay ciencia en eso, aunque si tienes rutinas para instanciar tus ventanas y heredás aun más tu clase TCustomFormX podrías crear rutinas del tipo:
Código Delphi [-]
type TFrmTest = class(TCustomFormX)
   ...
end;
...

var
   varFormX  : TFrmTest;
   varClassX : TFormClass;
begin
   varClassX := TFormClass(FindClass(NombreClase));
   varFormX  := (varClassX.Create(MainForm/Application) as TFrmTest);
   with varFormX do begin
      Propiedad1    := 1;
      ...
      PropiedadN    := N;
      Show/ShowModal;
   end;
end;


Ya también si deseas puedes realizar procesos sobre todas las ventanas que tengas abiertas recorriendo el objeto Screen.Forms y consultando por el tipo de clase podrías filtrar ciertos valores.

Si dije cualquier bolazo solo háganmelo saber porque como dije no entendí bien que es lo que se busca.

PD: Existía unos componentes que bien no recuerdo el nombre (APE, MDIModal o algo así) que permitían un manejo muy precioso de las ventanas modales. Buscar en torry puesto que no recuerdo.
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #3  
Antiguo 12-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Te respondo con otra pregunta: La unidad Sysutils.pas ¿a qué proyecto corresponde? No me salgas con que es una unidad inherente a Delphi... tú puedes hacer lo mismo ¿no?

Aunque un Form normalmente está dentro de un proyecto, se puede tener en una carpeta llamada "Forms utiles" convenientemente añadida al library Path de delphi. Puedes usar ese Form en varios proyectos simultáneamente.

Normalmente "todo lo que inventamos" ya ha sido pensado por alguien y tiene una versión mejor , por eso he aprendido a no complicarme la vida. Los requerimientos que tienes hoy, sin duda, variarán mañana; como no somos genios tendremos que modificar las cosas una y otra vez.

Ahora estas pensando en formularios de una sola instancia, usando la variable global que propone delphi (FrmClientes, FrmFacturas); debido a que continuamente estamos aprendiendo, mañana necesitarás varias instancias de una misma ventana y no podrás usar esas variables, por tanto todas las rutinas que tienes hechas no sirven, tendrás que modificarlas

Posiblemente haya una forma de trabajar para lo que pides (que conceptualmente se me escape), al menos para ventanas modales yo no sé como tratarlas de forma genérica, ya que además de cerrarse y obtener el típico mrOk/mrCancel necesitamos información adicional y para ello necesitamos acceder a la propia ventana o incluir algún evento personalizado.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 12-12-2006
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Muchas Gracias

Gydba y Lepe muchas gracias por tratar de entenderme

Cita:
Empezado por Lepe
Aunque un Form normalmente está dentro de un proyecto, se puede tener en una carpeta llamada "Forms utiles" convenientemente añadida al library Path de delphi. Puedes usar ese Form en varios proyectos simultáneamente.
Pues,... sin comentarios.... se me paso ese detalle... hay que ·$%& que soy. La verdad es que no la pensé así.

Cita:
Empezado por Lepe
Posiblemente haya una forma de trabajar para lo que pides (que conceptualmente se me escape), al menos para ventanas modales yo no sé como tratarlas de forma genérica, ya que además de cerrarse y obtener el típico mrOk/mrCancel necesitamos información adicional y para ello necesitamos acceder a la propia ventana o incluir algún evento personalizado.
Es verdad que en ocasiones para determinar el "comportamiento" de una ventana se va a requerir mayor información... alguna variable global o propia de la unidad...
Mi misión es tener métodos genéricos. Esas cosas ya para mi son particularidades de cada aplicativo. Ya veré como darle la "especialidad".

Cita:
Empezado por Gydba
Pare ser completamente honesto no entendí del todo cuál es el hilo de la cuestión
El hilo de la cuestión era (o es) tener definido métodos, funciones, o procedimientos genéricos (y en lo posible reutilizable) que trabajan sobre formas modales y no modales. El dilema es: ¿Cómo hacerlo? ¿Cuales son las alternativas?

Lo que pasa es que preferiría escuchar alternativas antes que cerrarme por una sola opción.

Cita:
Empezado por Lepe
por eso he aprendido a no complicarme la vida
Yo me la complico... es para mi una fuente de inspiración y autosuperación. Pero bueno... gustos... Y además, me permite aprender más.

Cita:
Empezado por Lepe
Normalmente "todo lo que inventamos" ya ha sido pensado por alguien y tiene una versión mejor
Si.... me vivió pasando. Recuerdo bien mi primer caso (este me motivó estudiar informática): Yo tengo una pequeña obseción por la historia bélica antigua... y tengo cierto gusto en particular por la cultura egipcia. Siendo pequeño, mientras jugaba al AOE I, con los egipcios... me salió la idea de hacer un juego de estrategia que sólo tratase la vida egipcia... como no sabía programar mi idea estaba en mi mente... o al menos eso creía. A unos cuantos días prendo la tele y allí estaba: mi idea.... en vivo y directo. Nivel X, un programa de juegos, estaba mostrando lo que yo me había imaginado... Pero bueno.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 12-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 23
Gydba Va por buen camino
Quizás es demasiado general lo que dices, puesto que hay que ver que tipo de rutinas buscas. Cuanto más te metas en lo que son las ventanas modales te darás cuenta que en última instancia tienen serias limitaciones puesto que el propio SO se encarga de todo en último plano. Con limitaciones me refiero al hecho de desarrollar rutinas para controlar el comportamiento tanto de éstas como de las ventanas no modales.

Para terminar te puedo sugerir que te fijes en éstos componentes que desarrollaron para entornos MDI, quizás te nutran más de cualquier cosa que pueda decir:
http://www.torry.net/quicksearchd.ph...ngine&Title=No

OFF TOPIC:
En mi opinión está bárbaro que uno invierta cierto tiempo en aprender cosas que generalmente parecen ordinarias o una perdida de tiempo. Por lo menos a mi la satisfacción de pasarme una semana viendo como las VCL dibujan un botón, una grilla o un label para luego generar nuevos componentes me gratifica más que cualquier paga por trabajo. Así que ánimos!

OFF TOPIC ^ 2:
No estarás hablando del juego "Faraón" de Sierra, verdad?
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #6  
Antiguo 12-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Cita:
Empezado por Gydba
En mi opinión está bárbaro que uno invierta cierto tiempo en aprender cosas que generalmente parecen ordinarias o una perdida de tiempo. Por lo menos a mi la satisfacción de pasarme una semana viendo como las VCL dibujan un botón, una grilla o un label para luego generar nuevos componentes me gratifica más que cualquier paga por trabajo. Así que ánimos!
Estoy totalmente de acuerdo, de hecho la VCL contiene no pocos trucos, cada vez que se mira se aprende algo nuevo.

Yo también dispongo de "esas funciones" en mis archivos, no creo que vuelva a usarlas pero, lo que aprendí diseñándolas y buscándoles errores, eso, eso nadie me lo quita .

Que conste que alguna de esas funciones si las he usado posteriormente, de hecho, recuerdo antes mis propias funciones que las homónimas de delphi (funciones que no encontraba en la ayuda y que yo mismo creé).

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #7  
Antiguo 13-12-2006
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Cita:
Empezado por Gydba
No estarás hablando del juego "Faraón" de Sierra, verdad?
Pues, si.... por algo no queria nombrarlo.... con sólo acordarme el nombre me da rabia

Me voy a poner a ver el componente que hay en el enlace.
Gracias

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ventanas Modales subzero Varios 1 27-09-2006 02:30:13
DLL y ventanas no modales droguerman OOP 0 15-09-2006 03:24:27
Ventanas modales en Kylix salvica Lazarus, FreePascal, Kylix, etc. 2 15-09-2006 01:36:01
Ventanas modales PTW Varios 1 19-05-2005 16:21:22
Nuevas dudas sobre ventanas modales radiohead OOP 2 26-10-2004 15:34:34


La franja horaria es GMT +2. Ahora son las 09:38:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi