SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: Cajami en Domingo 25 de Febrero de 2007, 17:10

Título: No Se Puede Usar Opacity?
Publicado por: Cajami en Domingo 25 de Febrero de 2007, 17:10
Hola, queria saber si de verdad no se puede usar la propiedad Opacity en los formularios hijos, hago lo siguiente:

   
Código: Text
  1. Private Sub FrmCargar_Docente_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         Me.Opacity = 0
  3.         Me.Timer.Interval = 50
  4.         Me.Timer1.Start()
  5.     End Sub
  6.  
  7.     Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  8.         Me.Opacity += 0.1
  9.         If Me.Opacity = 1.0 Then
  10.             Me.Timer1.Stop()
  11.         End If
  12.     End Sub
  13.  

desde el form padre llamo al formulario asi:

Código: Text
  1.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.         My.Forms.FrmCargar_Docente.MdiParent = Me
  3.         My.Forms.FrmCargar_Docente.Show()
  4.     End Sub
  5.  

Pero carga el form hijo normal, osea lo que tendria que verse es que el form hijo se vaya opacando poco a poco, con el timer logro eso, pero no lo hace, pero si quitara My.Forms.FrmCargar_Docente.MdiParent = Me carga como deberia cargar, pero claro no carga como Hijo si no normal y lo que quiero es cargar un hijo con ese efecto, espero que me hayan entendido  :hola:
Título: Re: No Se Puede Usar Opacity?
Publicado por: JuanK en Lunes 26 de Febrero de 2007, 13:53
No del todo, pero me late que cada vez que modifiques el valor de opacidad debes llamar a :

Application.DoEvents()
Título: Re: No Se Puede Usar Opacity?
Publicado por: Cajami en Lunes 26 de Febrero de 2007, 14:25
muchas gracias brother, justamente era eso :hola:
Título: Re: No Se Puede Usar Opacity?
Publicado por: Cajami en Lunes 26 de Febrero de 2007, 14:29
sorry recien me doy cuenta, como ayer he estado haciendo varias pruebas desactivé el codigo para que el form se convirtiera en hijo y ps creí que ia salía bien pero naaaa corregí eso para que salga como form hijo y ps no funciona la propiedad opacity
Título: Re: No Se Puede Usar Opacity?
Publicado por: JuanK en Lunes 26 de Febrero de 2007, 15:03
asi es , lo acabo de probar... ni idea, vere que se puede hacer.
Título: Re: No Se Puede Usar Opacity?
Publicado por: JuanK en Lunes 26 de Febrero de 2007, 16:41
Cita de: "MSDN"

Note   The MDI child form you create in this step is a standard Windows Form. As such, it has an Opacity property, which allows you to control the transparency of the form. However, the Opacity property was designed for top-level windows. Do not use it with MDI child forms, as painting problems can occur.

Si realmente lo necesitas tendras que usar la api de windows:

http://www.codeproject.com/w2k/QDWndTransp...0&select=717860 (http://www.codeproject.com/w2k/QDWndTransparency.asp?df=100&forumid=26287&exp=0&select=717860)
http://www.codeproject.com/dialog/wintrans...&select=1528906 (http://www.codeproject.com/dialog/wintrans1.asp?df=100&forumid=16103&exp=0&select=1528906)
Título: Re: No Se Puede Usar Opacity?
Publicado por: Cajami en Lunes 26 de Febrero de 2007, 18:02
hola, bueno la verdad no es que lo necesite si no que a mi parecer pueder ser un efecto bacan que se llame al formulario y que vaya apareciendo poco a poco pero he visto las paginas que has puesto y ni idea como hacerlo :D , nunca he usado Apis de Windows :hola:
Título: Re: No Se Puede Usar Opacity?
Publicado por: JuanK en Lunes 26 de Febrero de 2007, 18:10
Aca hay un ejemplo con C#...

la idea es que en los link que te pase hay ejemplo de como hacer lo que necesitas usando la API de windows... desde luego es algo enrredado porque esta en C++, pero lo que debes hacer es mirar que funcion de la api usan y luego importarla tal como se ve en este ejemplo de C#:

http://foros.solocodigo.com/index.php?showtopic=20803&hl=api (http://foros.solocodigo.com/index.php?showtopic=20803&hl=api)

y listo no es complicado... tal vez solo en principio pero es algo relativamente facil.
Título: Re: No Se Puede Usar Opacity?
Publicado por: Cajami en Lunes 26 de Febrero de 2007, 18:24
jejej sigo =, pero gracias por responderme, tendré que aprender a usar Apis en Vb 2005 para ver poder decifrar ese link que me has dado  :D