elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Minimizar?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Minimizar?  (Leído 1,377 veces)
ranslsad


Desconectado Desconectado

Mensajes: 492


Dim Ranslsad as String * :P - Que Vicio!


Ver Perfil WWW
Minimizar?
« en: 26 Junio 2007, 18:18 pm »

Hola amigos, hoy tengo una preguttita sencillita, yo tengo un codigo para minimizar mi aplicacion a la barra de tareas (un icono abajo a la derecha), pero la question una vez que lo minimizo no se como maximizarlo.
Bueno lo que yo realmente quiero es que si me pueden facilitar algun codigo para minimizas y tambien que al clickear sobre el icono (barra tareas) salga un menu..

Bueno si es posible, desde ya Gracias!!

Salu2

Ranslsad


En línea

Zeroql


Desconectado Desconectado

Mensajes: 957


Todo lo k sucede sucede por una razon


Ver Perfil WWW
Re: Minimizar?
« Respuesta #1 en: 26 Junio 2007, 18:59 pm »

Mira yo uso este code:

en un modulo:
Código:
Public Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" _
(ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean 'declaracion para el shell icon

Public Declare Function SetForegroundWindow Lib "user32" _
(ByVal hWnd As Long) As Long

Public Resultado As String
Public Type NOTIFYICONDATA
 cbSize As Long
 hWnd As Long
 uID As Long
 uFlags As Long
 uCallbackMessage As Long
 hIcon As Long
 szTip As String * 128
 dwState As Long
 dwStateMask As Long
 szInfo As String * 256
 uTimeout As Long
 szInfoTitle As String * 64
 dwInfoFlags As Long
End Type
Public nf_IconData As NOTIFYICONDATA

'declaracion de constantes y de la api para crar un sysicon
Public Const NOTIFYICON_VERSION = 3
Public Const NOTIFYICON_OLDVERSION = 0
Public Const NIM_ADD = &H0
Public Const NIM_MODIFY = &H1
Public Const NIM_DELETE = &H2
Public Const NIM_SETFOCUS = &H3
Public Const NIM_SETVERSION = &H4
Public Const NIF_MESSAGE = &H1
Public Const NIF_ICON = &H2
Public Const NIF_TIP = &H4
Public Const NIF_STATE = &H8
Public Const NIF_INFO = &H10
Public Const NIS_HIDDEN = &H1
Public Const NIS_SHAREDICON = &H2
Public Const NIIF_NONE = &H0
Public Const NIIF_WARNING = &H2
Public Const NIIF_ERROR = &H3
Public Const NIIF_INFO = &H1
Public Const NIIF_GUID = &H4
Public Const WM_MOUSEMOVE = &H200
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_RBUTTONDBLCLK = &H206

en un form:(Form_Load)
Código:
 With nf_IconData
  .cbSize = Len(nf_IconData)
  .hWnd = Me.hWnd
  .uID = vbNull
  .uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
  .uCallbackMessage = WM_MOUSEMOVE
  .hIcon = Me.Icon
  .szTip = "Mi programa" & vbNullChar 'aquí se puede colocar lo que quiera que se vea al poner el cursor sobre el ícono
 End With
 Shell_NotifyIcon NIM_ADD, nf_IconData

y por ultimo el Form_MouseMove:
Código:
Select Case Msg
  Case WM_LBUTTONUP 'restaura la ventana de formulario
    Me.WindowState = vbNormal
    Result = SetForegroundWindow(Me.hWnd)
    Me.Show
  Case WM_LBUTTONDBLCLK 'restaura la ventana de formulario
    Me.WindowState = vbNormal
    Result = SetForegroundWindow(Me.hWnd)
    Me.Show
  Case WM_RBUTTONUP 'desplega menú emergente
    Result = SetForegroundWindow(Me.hWnd)
    Me.PopupMenu Me.mnuMain 'mostrar el menu en el systray
  End Select

en este punot teexplicacre como funciona.
cuando das doble click, o un solo click el restaura el form. si kieres un menu cuando des click derecho debes colocarlo en la funcion WM_RBUTTONUP y listo.
bueno espero que te haya sido de ayuda este code.


En línea

Dime y lo olvido, enseñame y lo recuerdo, involucrame y lo aprendo.
/.-ZEROQL.-\   -----  #937675#

ranslsad


Desconectado Desconectado

Mensajes: 492


Dim Ranslsad as String * :P - Que Vicio!


Ver Perfil WWW
Re: Minimizar?
« Respuesta #2 en: 26 Junio 2007, 20:08 pm »

Hola amigo, lo e probado y me sale el siguiente error:

Compile Error:
Variable Not Defined

y probe varias cosas pero ni idea oye..

me sale en esta parte el error:
Código:
Select Case msg
  Case WM_LBUTTONUP 'restaura la ventana de formulario
    Me.WindowState = vbNormal
    result = SetForegroundWindow(Me.hWnd)
    Me.Show
  Case WM_LBUTTONDBLCLK 'restaura la ventana de formulario
    Me.WindowState = vbNormal
    result = SetForegroundWindow(Me.hWnd)
    Me.Show
  Case WM_RBUTTONUP 'desplega menú emergente
    result = SetForegroundWindow(Me.hWnd)
    Me.PopupMenu Me.mnuMain 'mostrar el menu en el systray
  End Select

Bueno espero que me pudas ayudar...

Salu2

Ranslsad
« Última modificación: 26 Junio 2007, 20:22 pm por ranslsad » En línea

Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: Minimizar?
« Respuesta #3 en: 28 Junio 2007, 00:08 am »

Cuando quieras que se maximize, pone esto:

Código:
Me.Show
Me.SetFocus
Me.WindowState = 0

Este code solo funciona, si queres abrir el form el cual tiene este code, ya que ME es para referirse al Form que lo contiene.


Sancho.Mazorka    :¬¬
En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Minimizar al area de notificacion
Programación Visual Basic
Velku 1 4,918 Último mensaje 17 Agosto 2011, 02:43 am
por Elemental Code
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines