elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 23:41  


Tema destacado: Entra al canal IRC oficial de #elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo, raul338)
| | |-+  Abrir seleccionar carpteas como si fuera vbmodal
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Abrir seleccionar carpteas como si fuera vbmodal  (Leído 630 veces)
MandingoPC

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Abrir seleccionar carpteas como si fuera vbmodal
« en: 8 Diciembre 2011, 01:20 »

Hola soy nuevo, un gusto a todos.


LO q hago es usar la funcion Shell.BrowseForFolder con un resto de código y parámetros para que me abra el cuadrito para seleccionar una carpeta. El problema es q si se hace click en el formulario, se pierde ese cartel.

Entonces, quisiera saber como hago para q no se pueda hacer otra accion en el progrma hasta q no se cancele o seleccione un directorio. Como si fuera un vbmodal en formularios.


Ah y ya q estoy para no abrir otro topic. MI programa crea un acceso directo a un .exe. Como se hace para que ese acceso directo tenga un icono que yo quiero? (osea cambiarle el icono al acceso directo)
Gracias


« Última modificación: 8 Diciembre 2011, 01:29 por MandingoPC » En línea
MandingoPC

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Abrir seleccionar carpteas como si fuera vbmodal
« Respuesta #1 en: 9 Diciembre 2011, 19:55 »

Podria algien porfavor ayudarme con esto? hace 3 dias que lo puse y nadie me contestó  :-X

En si es para q ese cartelito no se salga de la vista, como si fuera un vbmodal de formulariio


En línea
raul338
Moderador
***
Desconectado Desconectado

Mensajes: 2.371


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Abrir seleccionar carpteas como si fuera vbmodal
« Respuesta #2 en: 9 Diciembre 2011, 22:24 »

Hay clases alternativas para hacer un BrowseForFolder hasta personalizados

http://knol.google.com/k/manoj-ap/how-to-invoke-a-folder-browser-in/3bx1ymwndxj4/6#
http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=69481&lngWId=1
En línea

seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.214



Ver Perfil WWW
Re: Abrir seleccionar carpteas como si fuera vbmodal
« Respuesta #3 en: 10 Diciembre 2011, 00:13 »

proba esto:

Código
Option Explicit
 
Private Const BIF_RETURNONLYFSDIRS = 1
Private Const BIF_DONTGOBELOWDOMAIN = 2
Private Const MAX_PATH = 260
 
Private Declare Function SHBrowseForFolder Lib "shell32" (lpBI As BrowseInfo) As Long
Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
 
Private Type BrowseInfo
   hwndOwner As Long
   pIDLRoot As Long
   pszDisplayName As Long
   lpszTitle As Long
   ulFlags As Long
   lpfnCallback As Long
   lParam As Long
   iImage As Long
End Type
 
Private Function BrowseFolder()
 
   Dim lpIDList As Long
   Dim sbuffer As String
   Dim szTitle As String
   Dim tBrowseInfo As BrowseInfo
   szTitle = "Choose PrLr Scheduler Sound Folder"
 
 
   With tBrowseInfo
       .hwndOwner = Me.hWnd
       .lpszTitle = lstrcat(szTitle, "")
       .ulFlags = BIF_RETURNONLYFSDIRS + BIF_DONTGOBELOWDOMAIN
 
   End With
   lpIDList = SHBrowseForFolder(tBrowseInfo)
 
 
   If (lpIDList) Then
       sbuffer = Space(MAX_PATH)
       SHGetPathFromIDList lpIDList, sbuffer
       sbuffer = Left(sbuffer, InStr(sbuffer, vbNullChar) - 1)
 
       BrowseFolder = sbuffer
 
   End If
 
End Function
 
Private Sub Command1_Click()
   Call BrowseFolder
End Sub
 

Fuente: Make SHBrowseForFolder Modal?

el truco esta en poner BrowseInfo.hwndOwner = Me.hwnd

saludos.
En línea

Mucha gente, especialmente la ignorante desea castigarte por decir la verdad, por ser correcto, por ser tú. Nunca te disculpes por ser correcto, o por estar años delante de tu tiempo.
Si estas en lo cierto, y lo sabes, que hable tu razón. Incluso si eres una minoria de uno solo, la verdad sigue siendo la verdad. M. Gandhi
MandingoPC

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Abrir seleccionar carpteas como si fuera vbmodal
« Respuesta #4 en: 14 Diciembre 2011, 19:10 »

te agradezco mucho. Eso era tal cual lo que keria neo
« Última modificación: 14 Diciembre 2011, 19:15 por MandingoPC » En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
VENTANA ABRIR PARA SELECCIONAR CARPETAS Y ARCHIVOS
Windows
rocjfl 1 267 Último mensaje 11 Noviembre 2005, 15:04
por mkh22
como seleccionar la version de gcc a usar?
GNU/Linux
comapalta 7 646 Último mensaje 9 Julio 2006, 23:19
por comapalta
common dialog abrir/seleccionar mas de un fichero
Programación Visual Basic
luiski 3 528 Último mensaje 13 Octubre 2006, 07:48
por luiski
Como escanear y seleccionar desde xp
Wireless en Windows
raul7 11 2,448 Último mensaje 11 Abril 2010, 21:59
por raul7
Como seleccionar option en WebBrowser
.NET
Luis Ismael 3 1,354 Último mensaje 17 Febrero 2011, 03:31
por Luis Ismael
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines