Discussion:
Limite de controles en Visual Basic
(demasiado antiguo para responder)
David Varez
2009-02-04 16:33:01 UTC
Permalink
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.

El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.

Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.

En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.

Necesito algúun tipo de inspiración, por favor....

Gracias por la ayuda...
saraza
2009-02-04 16:48:25 UTC
Permalink
Y si en vez de separarlos en frames, los separas en formularios?
incluso, si está bien hecho, el usuario ni se da cuenta que son formularios
distintos.
y chau limites !!
Post by David Varez
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.
El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.
Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.
En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.
Necesito algúun tipo de inspiración, por favor....
Gracias por la ayuda...
Leonardo Azpurua
2009-02-04 20:46:21 UTC
Permalink
Post by David Varez
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.
El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.
Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.
En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.
Necesito algúun tipo de inspiración, por favor....
Hola,

Creo recordar que Windows asigna un cierto tipo de recursos, limitados en
cantidad a nivel del SO, a cada control. Creo que son los HDC. Cuando una
ventana está abierta y activa, los HDC de sus controles están igualmente
activos. Y hay un límite a la cantidad de HDC que Windows puede mantener
simultáneamente. Alguna vez tuve un problema parecido, al querer cargar
centenares de botones en una estructura de menúes gráficos con varios
planos. Pero el problema que obtenía era por falta de memoria (igual porque
esos controles en particular no usaban un DC).

En una situación semejante, intentaría, como primera opción, reemplazar
conjuntos de controles por algún otro tipo de control (del tipo FlexGrid,
por ejemplo).

Otra opción sería crear diferentes controles de usuario, cargarlos según
hiciera falta y descargarlos cuando terminaras de usarlos (a fin de cuentas,
el usuario no verá más de un plano cada vez).


Salud!
David Varez
2009-02-05 09:10:49 UTC
Permalink
Gracias a todos por vuestra ayuda. Al final lo he separado en diferentes
formularios que se cargan en los tabs de un tabindex, y asi, cuando el
usuario cambia de tab o de opción, se descarga el tab que estaba visualizando
y cargo el formulario en cuestión.

Lo dicho, muchas gracias a todos por vuestra ayuda. Que seria de todos
nosotros sin este foro...
Post by Leonardo Azpurua
Post by David Varez
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.
El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.
Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.
En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.
Necesito algúun tipo de inspiración, por favor....
Hola,
Creo recordar que Windows asigna un cierto tipo de recursos, limitados en
cantidad a nivel del SO, a cada control. Creo que son los HDC. Cuando una
ventana está abierta y activa, los HDC de sus controles están igualmente
activos. Y hay un límite a la cantidad de HDC que Windows puede mantener
simultáneamente. Alguna vez tuve un problema parecido, al querer cargar
centenares de botones en una estructura de menúes gráficos con varios
planos. Pero el problema que obtenía era por falta de memoria (igual porque
esos controles en particular no usaban un DC).
En una situación semejante, intentaría, como primera opción, reemplazar
conjuntos de controles por algún otro tipo de control (del tipo FlexGrid,
por ejemplo).
Otra opción sería crear diferentes controles de usuario, cargarlos según
hiciera falta y descargarlos cuando terminaras de usarlos (a fin de cuentas,
el usuario no verá más de un plano cada vez).
Salud!
unknown
2009-02-04 17:23:37 UTC
Permalink
Hola,

Esto dice la ayuda de VB:

Número total de controles

El número máximo de controles permitidos en un único formulario depende del
tipo de controles que se utilicen y de los recursos disponibles del sistema.
No obstante, hay un límite fijo de 254 nombres de control por formulario. En
este límite una matriz de controles sólo cuenta como uno, ya que todos los
controles en la matriz comparten un único nombre de control.

El límite para índices de matrices de controles es de 0 a 32.767 para todas
las versiones.

Si coloca controles uno encima de otro, como por ejemplo si utiliza varios
controles de marco dentro de otros marcos, Visual Basic no aceptará más de
seis niveles de controles anidados.
--
Un Saludo, Víctor Koch
Post by David Varez
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.
El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.
Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.
En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.
Necesito algúun tipo de inspiración, por favor....
Gracias por la ayuda...
Mario V.
2009-02-05 17:45:10 UTC
Permalink
Hola David

Solo por curiosidad...

Que tipo de aplicacion necesita tener mas de 255 controles en un formulario?
me parece que el usuario se volveria loco tratando de llenar o leer todos (o
los que necesite) los controles
Ademas... entran tantos controles en un solo form?


Salu2
Mario
Post by David Varez
Hola buenas tardes.
Vuelvo a plantearles un problema al que no encuentro solución.
Tengo una aplicación que tiene que cargar muchos controles en un formulario,
(bastantes mas de 255) y lo que estaba haciendo eran Arrays de controles para
poder meter mas.
El problema es que esto parece que tiene un límite, ya que cuando quiero
seguir agregando controles, me salta el típico mensaje de 'Se alcanzó el
límite. No se podrán crear mas controles para este formulario'.
Recurro a vosotros para ver si a alguien se le ocurre una idea de como
solventar este problema.
En principio el formulario está estructurado en diferentes frames, y cada
uno de ellos con sus propios arrays.
Necesito algúun tipo de inspiración, por favor....
Gracias por la ayuda...
Continúe leyendo en narkive:
Loading...