problemas con clases, objetos, creacion dinamica

21/09/2007 - 10:46 por Aitziber | Informe spam
Hola

estoy haciendo una clase, en la que en realidad tengo un boton. Y ese boton
le doy las utilidades que a mi me interesan.

En la principal tengo un formulario, que lo iré creando dinamicamente segun
mis necesidades.

La cosa es que declaro un objeto del tipo de la clase que he creado, pero no
me aparace. Y no se lo que hago mal.

Preguntas similare

Leer las respuestas

#6 Juan Diego Bueno
25/09/2007 - 13:24 | Informe spam
Hola Aitziber:

Primeramente, te recomiendo que consultes cualquier manual de C# donde se
trate la programación orientada a objetos, ya que lo que planteas es muy
básico, y te vendría bien leer sobre ello antes de meterte a saco con ello.

Por ejemplo:En www.josanguapo.com tienes un manual del lenguaje C# gratuito
y muy sencillo.

Para definir una propiedad en esa clase, tienes dos opciones:

1. Crear lo que sería una variable miembro pública:

public class miclase
{
public byte mivariable;
...
}

2. Crea una variable miembro privada, encapsulada dentro de la misma clase y
a la que puedas acceder mediante una propiedad:

private byte mivariable;

public byte mipropiedad
{
// Esto sirve para devolver el valor de la variable miembro
get
{
return mivariable;
}
// Esto para asignarlo
set
{
mivariable=value;
}
}

Saludos


"Aitziber" escribió en el mensaje
news:e423$01$
Ahora tengo otra dudita.

Yo a esa clase que he creado, le quiero agregar mas propiedades o
elementos,o atributos, o no se como se dice la verdad.
Por ejemplo un valor de tipo byte.
Como lo puedo hacer???




"Aitziber" escribió en el mensaje
news:uCcVkmD$
Muchas gracias.

Que lio me había armado!!!




"Juan Diego Bueno" escribió en el
mensaje news:
CLASE

public class Boton

{

Button boton = new Button();

byte region;

byte NObj;


public Boton()

{

//Button boton = new Button();

//byte region;

//byte NObj;

region = 0x00;

NObj = 0x00;

//inizialize

MessageBox.Show("sartu da!!");

boton.Visible = true;

//boton.Show();

}

}



Es que tu aquí lo que haces es crear una clase la cual contiene un
objeto botón. Además, lo de hacer declaración e inicialización del
objeto, la verdad... no sé si te funcionará, yo suelo inicializar los
objetos en el constructor de la clase, y creo que así debería ser.

Creo que lo que tu necesitas es una clase que herede de la clase button
(y corrígeme si me equivoco), lo cual sería algo así como:

public class Boton : System.Windows.Forms.Button
{


}

Saludos










Respuesta Responder a este mensaje
#7 Aitziber
25/09/2007 - 15:41 | Informe spam
Ya se que soy novata. Pero lo he hecho de la primera forma que tu describes
pero luego, al intentar alceder a esa propiedad desde el principal como lo
hago?
No se si sería así:

miclase prueba=new miclase();
prueba.mivariable=0x00;



"Juan Diego Bueno" escribió en el mensaje
news:
Hola Aitziber:

Primeramente, te recomiendo que consultes cualquier manual de C# donde se
trate la programación orientada a objetos, ya que lo que planteas es muy
básico, y te vendría bien leer sobre ello antes de meterte a saco con
ello.

Por ejemplo:En www.josanguapo.com tienes un manual del lenguaje C#
gratuito y muy sencillo.

Para definir una propiedad en esa clase, tienes dos opciones:

1. Crear lo que sería una variable miembro pública:

public class miclase
{
public byte mivariable;
...
}

2. Crea una variable miembro privada, encapsulada dentro de la misma clase
y a la que puedas acceder mediante una propiedad:

private byte mivariable;

public byte mipropiedad
{
// Esto sirve para devolver el valor de la variable miembro
get
{
return mivariable;
}
// Esto para asignarlo
set
{
mivariable=value;
}
}

Saludos


"Aitziber" escribió en el mensaje
news:e423$01$
Ahora tengo otra dudita.

Yo a esa clase que he creado, le quiero agregar mas propiedades o
elementos,o atributos, o no se como se dice la verdad.
Por ejemplo un valor de tipo byte.
Como lo puedo hacer???




"Aitziber" escribió en el mensaje
news:uCcVkmD$
Muchas gracias.

Que lio me había armado!!!




"Juan Diego Bueno" escribió en el
mensaje news:
CLASE

public class Boton

{

Button boton = new Button();

byte region;

byte NObj;


public Boton()

{

//Button boton = new Button();

//byte region;

//byte NObj;

region = 0x00;

NObj = 0x00;

//inizialize

MessageBox.Show("sartu da!!");

boton.Visible = true;

//boton.Show();

}

}



Es que tu aquí lo que haces es crear una clase la cual contiene un
objeto botón. Además, lo de hacer declaración e inicialización del
objeto, la verdad... no sé si te funcionará, yo suelo inicializar los
objetos en el constructor de la clase, y creo que así debería ser.

Creo que lo que tu necesitas es una clase que herede de la clase button
(y corrígeme si me equivoco), lo cual sería algo así como:

public class Boton : System.Windows.Forms.Button
{


}

Saludos














Respuesta Responder a este mensaje
#8 Juan Diego Bueno
25/09/2007 - 16:09 | Informe spam
Sí, así debería funcionar, cual es el problema?
¿desde donde estás intentando cambiar la propiedad, desde un form?

"Aitziber" escribió en el mensaje
news:uLyJwl3$
Ya se que soy novata. Pero lo he hecho de la primera forma que tu
describes pero luego, al intentar alceder a esa propiedad desde el
principal como lo hago?
No se si sería así:

miclase prueba=new miclase();
prueba.mivariable=0x00;



"Juan Diego Bueno" escribió en el mensaje
news:
Hola Aitziber:

Primeramente, te recomiendo que consultes cualquier manual de C# donde se
trate la programación orientada a objetos, ya que lo que planteas es muy
básico, y te vendría bien leer sobre ello antes de meterte a saco con
ello.

Por ejemplo:En www.josanguapo.com tienes un manual del lenguaje C#
gratuito y muy sencillo.

Para definir una propiedad en esa clase, tienes dos opciones:

1. Crear lo que sería una variable miembro pública:

public class miclase
{
public byte mivariable;
...
}

2. Crea una variable miembro privada, encapsulada dentro de la misma
clase y a la que puedas acceder mediante una propiedad:

private byte mivariable;

public byte mipropiedad
{
// Esto sirve para devolver el valor de la variable miembro
get
{
return mivariable;
}
// Esto para asignarlo
set
{
mivariable=value;
}
}

Saludos


"Aitziber" escribió en el mensaje
news:e423$01$
Ahora tengo otra dudita.

Yo a esa clase que he creado, le quiero agregar mas propiedades o
elementos,o atributos, o no se como se dice la verdad.
Por ejemplo un valor de tipo byte.
Como lo puedo hacer???




"Aitziber" escribió en el mensaje
news:uCcVkmD$
Muchas gracias.

Que lio me había armado!!!




"Juan Diego Bueno" escribió en el
mensaje news:
CLASE

public class Boton

{

Button boton = new Button();

byte region;

byte NObj;


public Boton()

{

//Button boton = new Button();

//byte region;

//byte NObj;

region = 0x00;

NObj = 0x00;

//inizialize

MessageBox.Show("sartu da!!");

boton.Visible = true;

//boton.Show();

}

}



Es que tu aquí lo que haces es crear una clase la cual contiene un
objeto botón. Además, lo de hacer declaración e inicialización del
objeto, la verdad... no sé si te funcionará, yo suelo inicializar los
objetos en el constructor de la clase, y creo que así debería ser.

Creo que lo que tu necesitas es una clase que herede de la clase
button (y corrígeme si me equivoco), lo cual sería algo así como:

public class Boton : System.Windows.Forms.Button
{


}

Saludos


















Respuesta Responder a este mensaje
#9 Aitziber
25/09/2007 - 16:17 | Informe spam
Si, desde un form que es la principal.
Mira te lo enseño:

Esta es la clase:
using System;

using System.Collections.Generic;

using System.Text;

namespace Panel_de_Mandos

{

public class Label_Estatico:System.Windows.Forms.Label

{

byte region;

byte NOj;

//byte[] colores = new byte[18];

public Label_Estatico(byte reg,byte obj)

{

region = reg;

NOj = obj;

}

}

}

Y este es el principal:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Reflection;

using System.IO.Ports;

namespace Panel_de_Mandos

{

public partial class Principal : Form

{

public void Recibido(object s, EventArgs e)

{

Label_Estatico lab_est = new Label_Estatico(0x00,0x01);

this.Controls.Add(lab_est);

lab_est.region

}

}

"Juan Diego Bueno" escribió en el mensaje
news:
Sí, así debería funcionar, cual es el problema?
¿desde donde estás intentando cambiar la propiedad, desde un form?

"Aitziber" escribió en el mensaje
news:uLyJwl3$
Ya se que soy novata. Pero lo he hecho de la primera forma que tu
describes pero luego, al intentar alceder a esa propiedad desde el
principal como lo hago?
No se si sería así:

miclase prueba=new miclase();
prueba.mivariable=0x00;



"Juan Diego Bueno" escribió en el
mensaje news:
Hola Aitziber:

Primeramente, te recomiendo que consultes cualquier manual de C# donde
se trate la programación orientada a objetos, ya que lo que planteas es
muy básico, y te vendría bien leer sobre ello antes de meterte a saco
con ello.

Por ejemplo:En www.josanguapo.com tienes un manual del lenguaje C#
gratuito y muy sencillo.

Para definir una propiedad en esa clase, tienes dos opciones:

1. Crear lo que sería una variable miembro pública:

public class miclase
{
public byte mivariable;
...
}

2. Crea una variable miembro privada, encapsulada dentro de la misma
clase y a la que puedas acceder mediante una propiedad:

private byte mivariable;

public byte mipropiedad
{
// Esto sirve para devolver el valor de la variable miembro
get
{
return mivariable;
}
// Esto para asignarlo
set
{
mivariable=value;
}
}

Saludos


"Aitziber" escribió en el mensaje
news:e423$01$
Ahora tengo otra dudita.

Yo a esa clase que he creado, le quiero agregar mas propiedades o
elementos,o atributos, o no se como se dice la verdad.
Por ejemplo un valor de tipo byte.
Como lo puedo hacer???




"Aitziber" escribió en el mensaje
news:uCcVkmD$
Muchas gracias.

Que lio me había armado!!!




"Juan Diego Bueno" escribió en el
mensaje news:
CLASE

public class Boton

{

Button boton = new Button();

byte region;

byte NObj;


public Boton()

{

//Button boton = new Button();

//byte region;

//byte NObj;

region = 0x00;

NObj = 0x00;

//inizialize

MessageBox.Show("sartu da!!");

boton.Visible = true;

//boton.Show();

}

}



Es que tu aquí lo que haces es crear una clase la cual contiene un
objeto botón. Además, lo de hacer declaración e inicialización del
objeto, la verdad... no sé si te funcionará, yo suelo inicializar los
objetos en el constructor de la clase, y creo que así debería ser.

Creo que lo que tu necesitas es una clase que herede de la clase
button (y corrígeme si me equivoco), lo cual sería algo así como:

public class Boton : System.Windows.Forms.Button
{


}

Saludos






















Respuesta Responder a este mensaje
#10 Juan Diego Bueno
25/09/2007 - 17:02 | Informe spam
Hola Aitziber:

Lógico que no te funcione, es que no has leído lo que yo te puse. Para
acceder a label_estatico.region, o la defines como public byte region en la
clase, o la defines como private y la muestras como propiedad.

Lo que te decía, mejor léete la parte de POO de un manual, porque son cosas
demasiado básicas del lenguaje y antes de meterte a usarlas, deberías tener
claros esos conceptos. Lo que planteas es iniciación al uso de clases y lo
verás en los primeros apartados de los manuales, que no te eche para atrás
pensar que vas a tener que leer miles de páginas para entenderlo.

Saludos


"Aitziber" escribió en el mensaje
news:%23gA8K63$
Si, desde un form que es la principal.
Mira te lo enseño:

Esta es la clase:
using System;

using System.Collections.Generic;

using System.Text;

namespace Panel_de_Mandos

{

public class Label_Estatico:System.Windows.Forms.Label

{

byte region;

byte NOj;

//byte[] colores = new byte[18];

public Label_Estatico(byte reg,byte obj)

{

region = reg;

NOj = obj;

}

}

}

Y este es el principal:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Reflection;

using System.IO.Ports;

namespace Panel_de_Mandos

{

public partial class Principal : Form

{

public void Recibido(object s, EventArgs e)

{

Label_Estatico lab_est = new Label_Estatico(0x00,0x01);

this.Controls.Add(lab_est);

lab_est.region

}

}

"Juan Diego Bueno" escribió en el mensaje
news:
Sí, así debería funcionar, cual es el problema?
¿desde donde estás intentando cambiar la propiedad, desde un form?

"Aitziber" escribió en el mensaje
news:uLyJwl3$
Ya se que soy novata. Pero lo he hecho de la primera forma que tu
describes pero luego, al intentar alceder a esa propiedad desde el
principal como lo hago?
No se si sería así:

miclase prueba=new miclase();
prueba.mivariable=0x00;



"Juan Diego Bueno" escribió en el
mensaje news:
Hola Aitziber:

Primeramente, te recomiendo que consultes cualquier manual de C# donde
se trate la programación orientada a objetos, ya que lo que planteas es
muy básico, y te vendría bien leer sobre ello antes de meterte a saco
con ello.

Por ejemplo:En www.josanguapo.com tienes un manual del lenguaje C#
gratuito y muy sencillo.

Para definir una propiedad en esa clase, tienes dos opciones:

1. Crear lo que sería una variable miembro pública:

public class miclase
{
public byte mivariable;
...
}

2. Crea una variable miembro privada, encapsulada dentro de la misma
clase y a la que puedas acceder mediante una propiedad:

private byte mivariable;

public byte mipropiedad
{
// Esto sirve para devolver el valor de la variable miembro
get
{
return mivariable;
}
// Esto para asignarlo
set
{
mivariable=value;
}
}

Saludos


"Aitziber" escribió en el mensaje
news:e423$01$
Ahora tengo otra dudita.

Yo a esa clase que he creado, le quiero agregar mas propiedades o
elementos,o atributos, o no se como se dice la verdad.
Por ejemplo un valor de tipo byte.
Como lo puedo hacer???




"Aitziber" escribió en el mensaje
news:uCcVkmD$
Muchas gracias.

Que lio me había armado!!!




"Juan Diego Bueno" escribió en el
mensaje news:
CLASE

public class Boton

{

Button boton = new Button();

byte region;

byte NObj;


public Boton()

{

//Button boton = new Button();

//byte region;

//byte NObj;

region = 0x00;

NObj = 0x00;

//inizialize

MessageBox.Show("sartu da!!");

boton.Visible = true;

//boton.Show();

}

}



Es que tu aquí lo que haces es crear una clase la cual contiene un
objeto botón. Además, lo de hacer declaración e inicialización del
objeto, la verdad... no sé si te funcionará, yo suelo inicializar
los objetos en el constructor de la clase, y creo que así debería
ser.

Creo que lo que tu necesitas es una clase que herede de la clase
button (y corrígeme si me equivoco), lo cual sería algo así como:

public class Boton : System.Windows.Forms.Button
{


}

Saludos


























Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida