hola, aver si me podeis decir como hacer un splash o imagen de carga, es decir, cuando ejecutas el programa, te sale una ventanita que por ejemplo pone, Visual Basic 6, (como en VB en realidad) y empieza a cargar todos los componentes, pues aver como puedo hacer eso
La manera mas cutre sería esta...
Ejecutas el Spash.frm primero, y automaticamente ejecutas el Form1.frm pero pones Form1.Visible = False
De esta manera el Form1 se esta ejecutando y cargando sus componentes, pones un Timer de 4 segundos (mas o menos) y al finalizar pones el Form1.Visible = True
Supongo que hay un método mejor, pero para que quieres eso? Que componentes deseas cargar?
De la manera q yo lo ago solo pongo un timer a 1000 en el form cuando pasen los 1000 secarga el segundo form y diras y como es que ya se cargaron bueno en pcs un poco mas lentas este form se queda conjelado hasta que termine de cargar puden pasar mas de los 1000 y quedarse el form pasas erl mause y te aparece el icono del reloj en el puntero del mause.
Tan solo es cosa de ponerse a pensar un tantito:
frmMain.frm está con .Visible = False y frmSplash.frm en .Visible = True
frmMain ejecuta el proceso, digamos:
Sub Main()
CargarComponentes()
CrearInterfaz()
Inicializar_aplicación()
'Ya está todo listo
DestroyWindow(frmSplash.hWnd)
frmMain.Visible = True
End Sub
Hilsen.
exacto, a eso me referia :)
ya lo consegui, os explico
2 forms, 1 para el splash
en el del splash ponemos 1 timer y interval esta bien en 5000
Unload Me
Form1.Show
luego en las propiedades de form1 se pone visible en false
y en form1 en Private Sub Form_Load() se pone en
Splash.Show
y ya esta, para personalizar el splash para que no tenga bordes podemos hacer
para que salga centrado (en las propiedades del form)
StartUpposition 2-CenterScreen
Border Style 1-Fixed Style
Yo soy de la idea de que, para casos como este, un Timer muestra falta de creatividad. Es mi pensamiento sólamente.
Hilsen.
Hola
Bueno, esta claro, que lo del timer es "rustico", pero es lo ideal
o acaso son motores de maquinaria los que arrancaras desde tu splash en visual basic? tambien hay que pensar que el splash solo se vera 1 o 2 segundos si el procesamiento no hace operaciones extremadamente complejas. A menos que estes programando un "vbphotoshop" creo que el timer es ideal.
saludos
Je, bueno, creo que quedé medio trahumado por una aplicación que estoy haciendo (en lugar de un vbphotoshop es un vbnotepad2.exe, osea, mi versión personalizada del notepad2.exe) y pues para aprender algo más decidí hacer casi todo con APIs y sin tantos controles ni dependencias por parte deVB, de modo que mi procedimiento main() quedó algo grande y con varias llamadas a procedimientos aún más grandes, y aunque no pasa de los 3 segundos en cargar (si se ejecuta por primera vez) ya me acostumbré a las cargas rápidas.
De cualquier forma sólo dije que yo no lo haría con un timer porque me parece innecesario.
Hilsener.
ave el compilador tiene una opcion para añadir el splash... añades un nuevo formulario.... proyecto/agregar formulario (el tipo de inicio)
luego en proyecto/propiedades , en objeto inicial pones el nuevo formulario añadido, el splash y el formulario le añades en el click del form que cargue el otro y listo...
Si el spalsh cómo dice en el título es de carga en teoría no habria que usar timers, simplemente al finalizar la carga cargarse el formulario y abrir el principal, para que un timer? para que la memória caché de tu pc no sirva para nada? para acabar con la paciencia del usuario? nosé...