|
Página 1 de 1
|
Buscar Dentro De Un Array De Objetos
Autor |
Mensaje |
xmuno
Usuario
Registrado: Febrero 2015
Mensajes: 49
Edad: 51
|
Buscar Dentro De Un Array De Objetos
Hola,
Es posible realizar una busqueda dentro de un array de objetos?
algo como:
id = prod.find(gv_1[i, 1].Text)
pero con un objeto.
Gracias
|
#1 Miercoles, 02 Septiembre 2015, 16:10 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Buscar Dentro De Un Array De Objetos
Si haces tú la función sí es posible, claro. Recorres el array comparando con el valor de la propiedad buscada y retornas el objeto cuya coincidencia sea verdadera. Es fácil de hacer pero no hay nada genérico hecho, no tendría demasiado sentido.
Saludos
=================== No podemos regresar
|
#2 Miercoles, 02 Septiembre 2015, 16:25 |
|
|
xmuno
Usuario
Registrado: Febrero 2015
Mensajes: 49
Edad: 51
|
Re: Buscar Dentro De Un Array De Objetos
Hola Shordi,
Te refieres a la funcion dentro de la clase?
Es la primera clase que he creado y voy bastante pez...
última edición por xmuno el Miercoles, 02 Septiembre 2015, 18:08; editado 1 vez
|
#3 Miercoles, 02 Septiembre 2015, 18:07 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Buscar Dentro De Un Array De Objetos
Hola Shordi,
Te refieres a la funcion dentro de la clase?
Es la primera clase que he creado y voy bastante pez...
Vamos a ver, una clase determina las propiedades y métodos de un objeto. Un objeto es lo que se llama Instancia de una clase. En el mundo real "Encendedor" es una clase, con sus métodos (encender, apagar) y sus propiedades (color, tamaño, etc). "Mi Encencedor" es una instancia de la clase Encendedor. Es un objeto. Tiene propiedades concretas, (verde, tres centímetros)
Dentro de la clase Encendedor no puedes tener una colección de encendedores. Es un absurdo.
Lo que sí puedes tener una colección -o un array- de instancias de una clase (o varias) asociados a una instancia de otra clase "contenedora", eso sí, Por ejemplo un formulario tiene una colección "Controls" que agrupa las instancias de la clase control asociadas a él. Siguiendo con el ejemplo de la vida real una instancia de la clase "Cajón" puede contener una colección de instancias de la clase "Encendedor".
Para buscar una instancia concreta -un encendedor concreto dentro del cajón- debes implementar una función -Find puede ser el nombre correcto- que recorra esa colección como un método de la clase contenedora.
No sé si me explico...
Saludos.
=================== No podemos regresar
última edición por shordi el Miercoles, 02 Septiembre 2015, 19:45; editado 1 vez
|
#4 Miercoles, 02 Septiembre 2015, 19:43 |
|
|
xmuno
Usuario
Registrado: Febrero 2015
Mensajes: 49
Edad: 51
|
Re: Buscar Dentro De Un Array De Objetos
Si, explicarte te explicas perfectamente bien. Incluso creo que lo he entendido.
El caso es que necesito guardar varias instancias de un objeto, hasta que el usuario acaba de seleccionar lo que le interesa(siguiendo tu ejemplo: quiero un encendedor verde, de 3 centimetros, otro azul de 5 centimetros...). Una vez ha acabado (ya ha seleccionado todo) hay que darle persistencia a esos datos (todavia no he resuelto eso).
He creado una clase "texto" con todas sus propiedades (tamaño de fuente, posición, etc) pero creo que no necesito metodos. Una vez tengo todos los "textos", tendré que dar persistencia. Evidentemente esos textos tendran que ser impresos en su posicion cuando sea necesario, pero para eso no creo que necesite un metodo en la clase...creo, si no una funcion extena(a la clase).
Mi idea era ir colocando lo que el usuario genera/selecciona en un array, siendo mas rápido el acceso (edicion/borrado) hasta que el usuario da el OK.
Como lo ves?
|
#5 Miercoles, 02 Septiembre 2015, 20:18 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Buscar Dentro De Un Array De Objetos
Hola,
Es posible realizar una busqueda dentro de un array de objetos?
...no comprendo la dificultad...
|
#6 Miercoles, 02 Septiembre 2015, 21:03 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Buscar Dentro De Un Array De Objetos
Si, explicarte te explicas perfectamente bien. Incluso creo que lo he entendido.
El caso es que necesito guardar varias instancias de un objeto, hasta que el usuario acaba de seleccionar lo que le interesa(siguiendo tu ejemplo: quiero un encendedor verde, de 3 centimetros, otro azul de 5 centimetros...). Una vez ha acabado (ya ha seleccionado todo) hay que darle persistencia a esos datos (todavia no he resuelto eso).
He creado una clase "texto" con todas sus propiedades (tamaño de fuente, posición, etc) pero creo que no necesito metodos. Una vez tengo todos los "textos", tendré que dar persistencia. Evidentemente esos textos tendran que ser impresos en su posicion cuando sea necesario, pero para eso no creo que necesite un metodo en la clase...creo, si no una funcion extena(a la clase).
Mi idea era ir colocando lo que el usuario genera/selecciona en un array, siendo mas rápido el acceso (edicion/borrado) hasta que el usuario da el OK.
Como lo ves?
No entiendo muy bien qué quieres hacer. Para lo que mencionas no necesitas métodos, efectivamente, ni objetos (dejando de lado la discusión sobre que un string lo sea o no, claro), con un array de strings te vale.
No entiendo muy bien eso de "dar persistencia". Si amplias más la información de qué quieres -¿imprimir? ¿copiar y pegar? ¿editar? ¿transformar? - tal vez te podamos ayudar más y si subes un pequeño proyecto donde se muestre lo que estás haciendo sería perfecto.
Saludos.
=================== No podemos regresar
|
#7 Jueves, 03 Septiembre 2015, 08:50 |
|
|
xmuno
Usuario
Registrado: Febrero 2015
Mensajes: 49
Edad: 51
|
Re: Buscar Dentro De Un Array De Objetos
Vuott, Shell
Teneis razón... , lo siento, no habia tal dificultad.
Citar: tal vez te podamos ayudar más y si subes un pequeño proyecto donde se muestre lo que estás haciendo sería perfecto.
Agradezco tu ofrecimiento Shell. El objetivo es hacer un pequeño editor de etiquetas, poder diseñar etiquetas de diferentes tamaños y con diferentes textos, images, etc.
Os he subido lo que he hecho hasta ahora, que es muy poco, y seguramente es muy mejorable, pero servirá para que veáis que es mas o menos lo que quiero. Al tener conocimientos limitados, estoy seguro de que hay mejores maneras de hacerlo.
Citar: No entiendo muy bien eso de "dar persistencia"
Con lo de "persistencia" quiero decir que, una vez acabado el diseño, deberia de poder guardarlo en una bbdd. Pero eso ya llegará.
Citar: Para lo que mencionas no necesitas métodos, efectivamente, ni objetos (dejando de lado la discusión sobre que un string lo sea o no, claro), con un array de strings te vale.
Lo sé, pero tengo que empezar con POO, y este pequeño proyecto me ha parecido un momento tan bueno como cualquier otro.
Ahora voy a intentar implementar la posibilidad de mover las cajas con el raton, tipo drag&drop. Por favor, no dudeis en corregirme en todo lo que creáis conveniente, estoy aprendiendo, y me gustaria aprender bien.
Gracias a todos.
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti.tar.gz |
Tamaño: |
10.3 KB |
Descargado: |
69 veces |
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti.tar.gz |
Tamaño: |
10.3 KB |
Descargado: |
69 veces |
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti.tar.gz |
Tamaño: |
10.3 KB |
Descargado: |
69 veces |
|
#8 Jueves, 03 Septiembre 2015, 17:25 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Buscar Dentro De Un Array De Objetos
Bien, efectivamente, hay que empezar a aprender por algún lado... pero no creo que ese sea el más efectivo. Uno aprende -es mi opinión- primero a usar lo que hay hecho y, a partir de ahí, aporta y añade su granito de arena al proyecto. (Es aquello de los enanos subidos a hombros de gigantes que dijo no sé quién). Creo entender lo que quieres hacer y me parece muy interesante: un diseñador de etiquetas a base de mover cuadros de texto dentro del DrawingArea.
Yo no lo haría así, dicho sea y sin entrar en si se puede o es buena idea o no. Yo utilizaría un panel a secas, no un drawingarea y sobre él colocaría objetos textArea o, quizá, textlabel. El TextArea muestra un richtext, es decir, admite negrita, cambio de fuente, colores de fuente, márgenes, ajustes de margen, etc. etc. por lo que a la hora de crear alguna etiqueta aumenta tus posibilidades ad infinitum y no siempre es necesario inventar la rueda de nuevo para entender cómo funciona...
Sólo tendrías que controlar vía drag & drop el lugar y tamaño de cada uno y podrías editar el texto, incluyendo todas esas características mentadas en tu cuadradito de la derecha.
Eso es cómo lo haría yo, claro, que no quiere decir nada porque tú no eres yo. De todas formas, me he permitido el modificarte ligeramente el formato del fMain, incluyendo contenedores auto-ajustables, de manera que no se haga necesario eso de ampliar o disminuir la pizarra vía numeros y botones, sino símplemente pinchando y arrastrando los bordes y el tamaño del Form.
Espero que te sea de ayuda.
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti-0.0.1.tar.gz |
Tamaño: |
6.2 KB |
Descargado: |
69 veces |
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti-0.0.1.tar.gz |
Tamaño: |
6.2 KB |
Descargado: |
69 veces |
Descripción: |
|
Descargar |
Nombre del archivo: |
diseti-0.0.1.tar.gz |
Tamaño: |
6.2 KB |
Descargado: |
69 veces |
=================== No podemos regresar
|
#9 Jueves, 03 Septiembre 2015, 19:04 |
|
|
xmuno
Usuario
Registrado: Febrero 2015
Mensajes: 49
Edad: 51
|
Re: Buscar Dentro De Un Array De Objetos
Muchas gracias shell por tus consejos.
De echo los numeros para ampliar la pizzarra son milimetros, ancho y alto de la etiqueta, que evidentemente hacen que el drawinng area sea mas grande o pequeño. Evidentemente cuando imprimes coinciden (si no me he equivocado) exactamente todos los tamaños con lo diseñado. Quizas para vosotros sea senzillo, pero a mi me ha llevado un trabajo, que me ha ayudado a aprender.
Si tu o algun otro tiene cualquier otra sugerencia os agradeceria que no dudeiss en hacermela saber.
Voy a echarle un ojo mañana mismo, si puedo, a tus modificaciones.
Muchas gracias.
|
#10 Jueves, 03 Septiembre 2015, 20:19 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|