Автор Тема: [Элементы GUI] Выпадающй список, отображение имен файлов в папке, открытие нужного файла  (Прочитано 2261 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн LL1yTHuK [?]

  • Новичок
  • *
  • Сообщений: 4
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.2.8.1
Доброго времени суток,
хотелось бы правильно реализовать выпадающий список, если была подобная тема то я ее не нашел ни в поиске, ни в этом разделе

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

(нажмите для показа/скрытия)

Русское сообщество AutoIt


Оффлайн LL1yTHuK [?]

  • Новичок
  • *
  • Сообщений: 4

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.2.8.1
изменил
(нажмите для показа/скрытия)

на
(нажмите для показа/скрытия)

вроде бы выводит файлы, но выводит их одной сторокой...


Внимание: Для просмотра прикреплённых файлов необходимо Войти или Зарегистрироваться

Помечен как лучший ответ пользователем LL1yTHuK Отправлен Август 20, 2016, 13:56:21

Оффлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 4102
  • Репутация: 1089
    • Награды
  • Версия AutoIt: 3.3.14.0
Код: AutoIt [Выделить]
#include <GUIConstantsEx.au3>
#include <File.au3>

$sFileDir = @ScriptDir & '\files\'
$sMemFile = @ScriptDir & "\LastFile.mem"

$Gui = GUICreate("GUI", 680, 340)
GUICtrlCreateLabel("Выбери файл", 300, 120, 250, 17)
$bStart = GUICtrlCreateButton("Поехали", 310, 280, 60, 20)
$iCombo = GUICtrlCreateCombo("", 185, 140, 310, 120)

$aFiles = _FileListToArray($sFileDir, "*.txt", $FLTA_FILES)
If Not @error Then
  For $i = 1 To $aFiles[0]
    GUICtrlSetData($iCombo, $aFiles[$i])
  Next
EndIf

$sLastFile = FileRead($sMemFile)
If Not @error And FileExists($sFileDir & $sLastFile) Then GUICtrlSetData($iCombo, $sLastFile, $sLastFile)

GUISetState()

While 1
  Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
      ExitLoop
    Case $bStart
      $sFileName = GUICtrlRead($iCombo)
      If FileExists($sFileDir & $sFileName) Then
        ShellExecute($sFileDir & $sFileName)
        $hFile = FileOpen($sMemFile, 2 + 512)
        FileWrite($hFile, $sFileName)
        FileClose($hFile)
      EndIf
  EndSwitch
WEnd


Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
1 Ответов
14046 Просмотров
Последний ответ Ноябрь 15, 2010, 14:47:12
от CreatoR
0 Ответов
4224 Просмотров
Последний ответ Май 30, 2011, 17:58:58
от Tosyk
2 Ответов
2503 Просмотров
Последний ответ Июль 19, 2012, 11:42:00
от asdf8
3 Ответов
2725 Просмотров
Последний ответ Август 17, 2012, 01:32:23
от AZJIO
15 Ответов
5954 Просмотров
Последний ответ Январь 07, 2015, 20:12:36
от fedoroff
5 Ответов
4800 Просмотров
Последний ответ Ноябрь 23, 2015, 15:37:30
от exHalfer
4 Ответов
2089 Просмотров
Последний ответ Июнь 30, 2014, 13:10:46
от WR-e-D
0 Ответов
913 Просмотров
Последний ответ Ноябрь 13, 2014, 17:20:31
от horatio-caine
4 Ответов
3793 Просмотров
Последний ответ Сентябрь 01, 2016, 12:24:53
от atrade06
2 Ответов
815 Просмотров
Последний ответ Май 02, 2017, 12:02:02
от coul_28