Hi Leuts,
ich möchte eine Art "Quick PDF-Viewer" basteln, dass, wenn man etwas sucht, nicht jedes PDF aufmachen muss, sondern einfach nur kurz durchklicken und bei Fund direkt aus dem GUI raus öffnen.
Soweit so gut, mit Text-Dateien ist das Ding kein Problem, allerdings krieg ichs nicht hin, dass er beim Klick auf "Weiter" oder "Zurück" das jeweilige File auch im Control anzeigt (gefunden hier im Forum, einmalige Anzeige funktioniert).
Hier mal mein kläglicher Versuch, evtl weiss jemand weiter
Spoiler anzeigen
#AutoIt3Wrapper_UseX64=n
#include <file.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("PDF Viewer", 631, 469, 192, 114)
[/autoit] [autoit][/autoit] [autoit]Global $oPDF = ObjCreate("AcroPDF.PDF.1")
Global $GUI_ActiveX = GUICtrlCreateObj($oPDF, 16, 72, 593, 377)
GUICtrlSetStyle($GUI_ActiveX, $WS_VISIBLE)
GUICtrlSetResizing($GUI_ActiveX, $GUI_DOCKAUTO)
$path = GUICtrlCreateInput("", 16, 16, 593, 21)
GUICtrlSetState(-1, $GUI_DISABLE)
$back = GUICtrlCreateButton("<-", 16, 40, 75, 25, $WS_GROUP)
$open = GUICtrlCreateButton("Öffnen", 96, 40, 75, 25, $WS_GROUP)
$fwd = GUICtrlCreateButton("->", 176, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
Global $dir = @ScriptDir
Global $files = _FileListToArray($dir,"*.pdf")
Global $cnt = UBound($files)
Global $infile
Global $i = 0
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $back
file("back")
Case $fwd
file("next")
Case $open
file("open")
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
func file($opt)
if $opt = "open" Then ShellExecute(GUICtrlRead($path))
if $opt = "next" Then $i += 1
if $opt = "back" Then $i -= 1
if $i >= $files[0] +1 Then $i = 1
if $i <= 0 Then $i = $files[0]
;~ _ArrayDisplay($files)
;~ ConsoleWrite($i & @lf)
GUICtrlSetData($path, $dir & "\" & $files[$i])
$oPDF.src = $files[$i]
EndFunc
Danke & Gruß
x0r