На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: SCINER, B.V.
  
    > HOWTO: Автозаполнение.
      Хотите автозаполнение, как у диалога запуска файлов? Лень возится с написанием такой примочки вручную? Есть простой способ!

      Бросаем на форму TextBox и ComboBox, далее пишем такой код:
      ExpandedWrap disabled
        Private Declare Function SHAutoComplete Lib "shlwapi" (ByVal hWnd As Long, ByVal uflag As Long) As Long
        Private Declare Function CoInitialize Lib "ole32" (ByVal pvReserved As Long) As Long
        Private Declare Function FindWindowExA Lib "user32" (ByVal hWnd As Long, ByVal hWnd2 As Long, ByVal lpszClass As Any, ByVal lpszTitle As Any) As Long
        Private Declare Function CoUninitialize Lib "ole32" () As Long
         
        Private Const SHACF_DEFAULT = 0
        Private Const SHACF_FILESYSTEM = 1
        Private Const SHACF_URLHISTORY = 2
        Private Const SHACF_URLMRU = 4
        Private Const SHACF_URLALL = SHACF_URLHISTORY Or SHACF_URLMRU
        Private Const SHACF_USETAB = 8
        Private Const SHACF_FILESYS_ONLY = &H10
         
        Private Const SHACF_AUTOSUGGEST_FORCE_ON = &H10000000
        Private Const SHACF_AUTOSUGGEST_FORCE_OFF = &H20000000
        Private Const SHACF_AUTOAPPEND_FORCE_ON = &H40000000
        Private Const SHACF_AUTOAPPEND_FORCE_OFF = &H80000000
         
         
        Private Sub Form_Load()
        Call CoInitialize(0)
        Call SHAutoComplete(Text1.hWnd, SHACF_USETAB Or SHACF_FILESYSTEM Or SHACF_URLALL Or SHACF_FILESYS_ONLY)
        Call SHAutoComplete(FindWindowExA(Combo1.hWnd, 0, 0&, 0&), SHACF_USETAB Or SHACF_FILESYSTEM Or SHACF_URLALL Or SHACF_FILESYS_ONLY)
        End Sub
         
        Private Sub Form_Unload(Cancel As Integer)
        Call CoUninitialize()
        End Sub


      Запускаем, в текстовом поле или в списке набираем что-то вроде C:\.
      Прикреплённая картинка
      Прикреплённая картинка
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0348 ]   [ 16 queries used ]   [ Generated: 28.03.24, 09:18 GMT ]