Кнопочка ОБЗОР

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Neptus
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 10.07.2003 (Чт) 15:27
Откуда: Россия

Кнопочка ОБЗОР

Сообщение Neptus » 20.08.2003 (Ср) 15:41

Как вызвать стандартное окно обзора для выбора пути к файлу.

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 20.08.2003 (Ср) 15:53

Тебе нужен выбор файла или выбор каталога?

Tarik
Агент Системы
Агент Системы
Аватара пользователя
 
Сообщения: 1222
Зарегистрирован: 03.01.2003 (Пт) 16:05
Откуда: Москва

Сообщение Tarik » 20.08.2003 (Ср) 18:35

Вот у меня тут завалялся один ооочень полезный класс. В нём помимо обычных окошек для выбора файла есть выбор каталога и ещё чего-то, не помню уже :)
Вложения
cdlg.zip
Common Dialog
(9.56 Кб) Скачиваний: 65
Изображение

Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!

Neptus
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 10.07.2003 (Чт) 15:27
Откуда: Россия

Сообщение Neptus » 21.08.2003 (Чт) 9:08

Выбор каталога, с файлами прроблем нет, а вот как научить прогу выбор каталога делать я не знаю :cry:

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 21.08.2003 (Чт) 11:23

Лови
Вложения
clsOpenFolder.zip
Стандартный диалог выбора фолдера
(1.35 Кб) Скачиваний: 55

Tarik
Агент Системы
Агент Системы
Аватара пользователя
 
Сообщения: 1222
Зарегистрирован: 03.01.2003 (Пт) 16:05
Откуда: Москва

Сообщение Tarik » 21.08.2003 (Чт) 15:44

А вот код для моего класса:
Код: Выделить всё
CdlgEx1.hOwner = Me.hWnd
CdlgEx1.DialogPrompt = "Выберите директорию для поиска"
CdlgEx1.ShowFolder
lbldir = CdlgEx1.InitDir
Изображение

Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!

Neptus
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 10.07.2003 (Чт) 15:27
Откуда: Россия

Сообщение Neptus » 22.08.2003 (Пт) 8:25

to Tarik: код я кое как прикрутил, только вот проблема, никак не могу заюзать стору с lbldir постоянно вылетает ошибка, я с час с ней боролся, как только убираю строку, все работает идеально, только вот невидно какой путь, что она такого использует?

Хой
Не математик
Не математик
 
Сообщения: 541
Зарегистрирован: 26.08.2002 (Пн) 0:21
Откуда: Россия

Сообщение Хой » 22.08.2003 (Пт) 8:32

если я правильно понял проблему, то вот примерчик:
----------
Код: Выделить всё
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
Const BIF_RETURNONLYFSDIRS = 1
Const MAX_PATH = 260
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Private Sub Form_Load()
        Dim iNull As Integer, lpIDList As Long, lResult As Long
    Dim sPath As String, udtBI As BrowseInfo

    With udtBI
                .hWndOwner = Me.hWnd
       
        .lpszTitle = lstrcat("Выберите католог.", "")
            End With

       lpIDList = SHBrowseForFolder(udtBI)
    If lpIDList Then
        sPath = String$(MAX_PATH, 0)
               SHGetPathFromIDList lpIDList, sPath
               CoTaskMemFree lpIDList
        iNull = InStr(sPath, vbNullChar)
        If iNull Then
            sPath = Left$(sPath, iNull - 1)
        End If
    End If

    MsgBox sPath
End Sub

sPath, это и будет путь к катологу.... причём никаких дополнительных контролов.....
ДОЛОЙ ОСХ!!!!

Neptus
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 10.07.2003 (Чт) 15:27
Откуда: Россия

Сообщение Neptus » 22.08.2003 (Пт) 8:48

thx

Георгий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 08.08.2003 (Пт) 15:08
Откуда: Россия

Информация к размышлению...

Сообщение Георгий » 22.08.2003 (Пт) 15:24

Разве у стандартного диалога ShowOpen нет параметра отображать ввиде проводника :roll: :?:
Origin - это что?

ZeroX
Бывалый
Бывалый
 
Сообщения: 207
Зарегистрирован: 29.04.2003 (Вт) 12:36
Откуда: Мой адрес не дом и не улица, мой адрес Советский Союз

Сообщение ZeroX » 22.08.2003 (Пт) 15:41

Нету!
Каждый warning мечтает стать error'om

Георгий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 08.08.2003 (Пт) 15:08
Откуда: Россия

Сообщение Георгий » 22.08.2003 (Пт) 16:10

Мда... значит спутал счем-то... Но что-то подобное точно было

З.Ы.http://m-design.prima.susu.ac.ru/docs/vbhtml/15.htm
Origin - это что?

Хой
Не математик
Не математик
 
Сообщения: 541
Зарегистрирован: 26.08.2002 (Пн) 0:21
Откуда: Россия

Сообщение Хой » 22.08.2003 (Пт) 17:13

Neptus писал(а):thx

Да, вот она благодарность за титанический труд...
:-)

Neptus
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 10.07.2003 (Чт) 15:27
Откуда: Россия

Сообщение Neptus » 24.08.2003 (Вс) 21:59

Ну это спорный вопрос, вся эта благодарность или нет. Мне помогли я помогу, когда помогу будет моя благодарность. :wink:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 4

    TopList