Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-10-2004
Avatar de kye_z
kye_z kye_z is offline
Miembro
 
Registrado: oct 2004
Ubicación: Barcelona
Posts: 43
Poder: 0
kye_z Va por buen camino
Duda! donde crear una Classe¿?

buenas,

mi duda la verdad es que es algo ... simple pero que me trae de cabeza...

estoy mirando lo de POO i me preguntaba que donde creais normalmente las classes i como.

Os dire mi opinion i corregirme si me ekivoco o si acierto o kualkier cosa que os pase por la cabesa...

Yo crearia la clase en un unit a parte sin formulario ni nada. (lo que no se es si las crearia todas alli o cada una en un unit distinto...)

Luego el como crearla esto ya no lo tengo mu claro... si podeis aportar un pequeño ejemplo.. pues me seria de bastante ayuda ( con un par de atributos i un par de funciones me conformaria...)

lo de utilizarla despues en los formularios i en la aplicacion en general.. ya ire investigando.. k poko a poco empiezo a tener las cosas claras...

muchissimas gracias de antemanoooo i por vuestra ayuda desinteressada!!!
__________________
------------------------
o0 CarloS 0o
Joven Padawan
algun dia sere un maestro...
------------------------
Responder Con Cita
  #2  
Antiguo 27-10-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por kye_z
Os dire mi opinion i corregirme si me ekivoco o si acierto o kualkier cosa que os pase por la cabesa...
Tratándose de un foro en español, te recomiendo escribir en este idioma

Cita:
Empezado por kye_z
Yo crearia la clase en un unit a parte sin formulario ni nada. (lo que no se es si las crearia todas alli o cada una en un unit distinto...)
Donde crear la clase, queda bajo criterio del programador... si es una clase que solo se va a usar dentro de una unit, tenga o no un "formulario", yo la crearía en esa unit. Si la clase va a ser utilizada desde diferentes unit, podría crearla solitaria en otra unit, o una unit que contenga varias clases...

Cita:
Empezado por kye_z
Luego el como crearla esto ya no lo tengo mu claro... si podeis aportar un pequeño ejemplo.. pues me seria de bastante ayuda ( con un par de atributos i un par de funciones me conformaria...)
Con ver cualquiera de las units de Delphi, por ejemplo "classes" tienes unos cuantos ejemplos para observar.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 27-10-2004
Avatar de kye_z
kye_z kye_z is offline
Miembro
 
Registrado: oct 2004
Ubicación: Barcelona
Posts: 43
Poder: 0
kye_z Va por buen camino
buenas,

he estado mirando la unit "classes" del delphi i mas o menos ya lo tengo claro...
ahun asi, a parte del codigo de la classe, se tendria que poner algo mas?!..

yo de momento tengo un unit con solo esto i no se si funcionaria.
Código:
categoria = class
  private
	idCategoria: integer;
	nomCategoria: string;
	maxims: integer;
	minims: integer;
	sexe: string;
  protected
	procedure putId (id: integer);
	procedure putNom (nom: string);
	procedure putMax (max: integer);
	procedure putMin (min: integer);
	procedure putSexe (sexe: string);
  public
	constructor categoria(id: integer;nom: string;max: integer;min: integer;sexe: string);
end;
abajo iria implementando cada uno de los procedimientos que consideraria necesarios.

muchas gracias!!
__________________
------------------------
o0 CarloS 0o
Joven Padawan
algun dia sere un maestro...
------------------------
Responder Con Cita
  #4  
Antiguo 27-10-2004
Avatar de ruina
ruina ruina is offline
Miembro
 
Registrado: jun 2004
Posts: 196
Poder: 20
ruina Va por buen camino
bien, algunos comentarios al código expuesto (pa ayudar, claro):


me estoy imaginando que esos procedimientos putId, put... son para guardar los valores ... pero en delphi tenemos un mecanismo realmente bueno para estos casos que son las propertys , por ejemplo, cuando tu escribes button1.visible := false estas cambiando una propiedad, es decir, lo escribes como si cambiases una variable de la clase, pero resulta que ademas el boton ¡desaparece de la pantalla!
¿como es posible esto?
¿como es que no tengo que escribir otra sentencia para que se oculte? como por ejemplo:
button1.visible := false
button1.Repaint(); ?

Porque en realidad lo que se hace al cambiar una propiedad es llamar a un método de la clase con el valor como parametro, es decir, nosotros escribimos button1.visible := false pero en realidad por debajo se esta escribiendo button1.Setvisible(false);


¿como hacer que funcionen las propertys en nuestras clases?

Sencillisimo:
Código Delphi [-]
  caracteristica = class
  private
    FidCategoria: integer;
    FnomCategoria: string;
    procedure SetidCategoria(const Value: integer);
    procedure SetnomCategoria(const Value: string);
...
  protected
  public
      property idCategoria: integer read FidCategoria write SetidCategoria;
      property nomCategoria: string read FnomCategoria write SetnomCategoria;
...
  end;
implementation
...
procedure caracteristica.SetidCategoria(const Value: integer);
begin
  FidCategoria := Value;
end;
procedure caracteristica.SetnomCategoria(const Value: string);
begin
  FnomCategoria := Value;
end;

como vemos en este caso para acceder (read) a la propiedad se lee directamente el valor desde la varaible privada FidCategoria y para escribirla se llama a Setxxx, así, si necesitamos hacer mas cosas cuando se cambie el valor de la propiedad tan solo debemos escribir debajo ó encima de FidCategoria := Value;

¿que hay que escribir mucho para poner una propiedad?
bueno, un pequeño truco: si tan solo escribimos
Código Delphi [-]
      property menu:string;
y pulsamos Shift + Ctrl + C, él solito nos rellenará el resto de código.

si necesitamos una propiedad con Get y Set escribiremos:
Código Delphi [-]
      property menu:string read Getmenu write Setmenu;
y pulsamos de nuevo Shift + Ctrl + C, para obtener la decinición de la funcion Getmenu y del procedure Setmenu

^_^

bueno, igual me he desviao un poco, pero tarde o temprano llegaras a la definición de propiedades.
__________________
todo el mundo debe creer en algo... yo creo que voy a tomarme otra copa.
Responder Con Cita
  #5  
Antiguo 27-10-2004
Avatar de kye_z
kye_z kye_z is offline
Miembro
 
Registrado: oct 2004
Ubicación: Barcelona
Posts: 43
Poder: 0
kye_z Va por buen camino
aahora me quedao en blanco.. jejejeanalizare un poco mas lo que me cuentas i a ver que puedo sacar d claro!! muchas gracias por eso!!1

ya ire evolucionando!! D jejeje

ta la proxima!!
__________________
------------------------
o0 CarloS 0o
Joven Padawan
algun dia sere un maestro...
------------------------
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 17:24:27.


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