border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU

Retroceder   VB-MUNDO - Programacion Visual > Programacion - Lenguajes > Visual Basic 6.00
Registrarse FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 15-01-2005, 20:15:03
Gran Participación en el Foro
 
Registrado: ago 2004
Ubicación: Buenos Aires - Argentina
Posts: 359
dares_ Valoración +2
Contactar con dares_ a través de MSN
Predeterminado Centrar o Posicionar un Formulario dentro de otro Formulario

Hola!
Tengo un proyecto en VB6 y lo que quiero es dentro de un formulario principal llamar a otro formulario secundario y ubicarlo centrado en el formulario principal o segun los top y left del formulario principal pocisionar al formulario secundario, y que esta rutina me funcione en cualquier configuracion ya sea 800 x 600 o 1024 x 768...
La rutina que estaba usando para centrar es esta, pero no me esta andando muy bien...y ahora se complica porque quisiera aparte de pocer centrar, ubicarlo en una prosicion del formulario principal al secundario, y que me funcione en cualquier configuracion...me pueden ayudar?
Gracias
Diego

'Formulario es el que se tiene que centrar (Esta rutina esta en el Modulo)
Public Sub CntrFrmPantalla(Formulario As Object)
Dim X, Y
X = (Screen.Width - Formulario.Width) / 2
Y = (Screen.Height - Formulario.Height) / 2
If Formulario.WindowState = 1 Or Formulario.WindowState = 2 Then Exit Sub
Formulario.Move X, Y
End Sub
Responder Con Cita
  #2 (permalink)  
Antiguo 15-01-2005, 21:08:51
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

Pues en vez de screen utiliza los datos del principal, más o menos así en el evento Load o Activate (según te convenga) del formulario secundario (Que en este caso se transforma en ME).



Código:
me.left=principal.left + ((me.principal.width-me.width)/2)
me.top=principal.top + ((me.principal.height-me.height)/2)

Esto te funcionará siempre y cuando se cumpla la condición que el secundario sea de menor tamaño en todas las magnitudes que el principal, de lo contrario error al canto.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 15-01-2005, 22:40:12
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Creo que tienes también la posibilidad de definir la propiedad StartUpPosition del formulario-hijo como 1- CenterOwner, y automáticamente se te presenta centrado en el formulario padre, sea cual sea la definición del monitor.
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #4 (permalink)  
Antiguo 16-01-2005, 20:48:38
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado

Amigo Movilla:

Observarás la sencillez de tu respuesta si la comparas con la complejidad de la mía (La tuya es la que vale).

También comprobarás que mi particular forma de entender el camino más corto entre dos puntos, se basa en el Limacón de Pascal con dos órbitas añadidas a Saturno, en vez de en la línea recta.


Un saludo amigo.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #5 (permalink)  
Antiguo 16-01-2005, 21:11:52
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Pues que conste, mi querido Leonardo, que he puesto ese mensaje con el temor de que me había salido de contexto... Lo que ocurre es que como sé aceptar que a veces "hablo por hablar"... pues me atreví a ponerlo, y mira por cuánto me sorprende esa gran verdad de que lo nimio se nos escapa más fácilmente que lo importante...
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #6 (permalink)  
Antiguo 17-01-2005, 13:15:23
Un Nuevo Amigo
 
Registrado: dic 2004
Ubicación: Buenos Aires - Argentina
Posts: 3
elros Valoración +2
Predeterminado

Bien, digamos que para centrar no habria tanto drama...pero si ahora lo que quiero es posisionar en formulario secundario en una posicion exacta del formulario principal, tomando las propiedades de top y left del principal, es esto posible? como hago?
Gracias
Diego
Responder Con Cita
  #7 (permalink)  
Antiguo 17-01-2005, 18:46:21
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Pues usando la fórmula de acalanto...

me.left=principal.left + 180 (ó + 1280... ó + 3620...)
me.top=principal.top + la cantidad que te interese...
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
Respuesta


Herramientas
Desplegado

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
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Centrar Formulario Child dares_ Visual Basic 6.00 1 11-03-2008 22:38:19
contador dentro de un formulario con c# jardinderosa C# .NET 1 26-01-2008 00:43:41
Centrar título de formulario baucis Visual Basic 6.00 2 03-09-2006 01:05:40
Imprimir un formulario con un picturebox dentro franjog22 Visual Basic 6.00 1 17-09-2004 01:00:00
Formulario q llama a otro J.M.Movilla Visual Basic 6.00 1 05-03-1970 09:56:26


La franja horaria es GMT. Ahora son las 03:08:31.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right