Что нового

[Окна, Диалоги] переключение между окнами

TiranCool

Новичок
Сообщения
78
Репутация
0
Версия AutoIt:Version 3.6.6 3.

Описание :Как переключаться между окнами в скрипте. Требуется переключаться между Exel и PDF файлами. Помогите пожалуйста. Заранее Спасибо.

Код:
Send("{LAlt}+{tab}");не срабатывает
///////////////////
Send("{ALTDOWN}+{Insert}")
Send("{ALTUP}");не срабатывает
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
TiranCool,
Код:
Send("!{TAB}")


Также можете использовать
Код:
WinActivate()
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
Код:
Send("!{TAB}"); не работает
Код:
WinActivate(); как им сделать переключение?
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
TiranCool, справку по функции пробовали смотреть? Там есть и пример и описание параметров для ее вызова
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
Спрашиваю из-за того, что пробовал и не получилось.
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
TiranCool, приложите то что вы пробовали и скриншот Au3Info/ControlViewer с информацией о окнах
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
Вот код, который я делаю
Код:
#include <Misc.au3>
#Include <WinAPIEx.au3>
#Include <APIConstants.au3>
#include <GUIToolbar.au3>

Opt("MouseClickDelay", 60)
Opt("MouseClickDownDelay", 60)
Global $paused, $t, $hDll
OnAutoItExitRegister("OnExit")
HotKeySet("{F5}", "start")
HotKeySet("{F6}", "pause")
HotKeySet("{ESC}", "quit")
Func OnExit()
    ToolTip("")
    DllClose($hDll)
EndFunc   ;==>OnExit
Func start()
    ; ToolTip("")
    ToolTip("Работаю... Нажми F6 для паузы или Esc для выхода.", 1, 1)

    $paused = False
EndFunc   ;==>start
Func pause()
    $paused = True
    ; ToolTip("")
    ToolTip("Ожидание... Нажми F5 для начала или Esc для выхода.", 1, 1)
    While $paused = True
        Sleep(100)
    WEnd
    ; ToolTip("")
EndFunc   ;==>pause
Func quit()
    Exit
EndFunc   ;==>quit

Func clicks()

	Sleep(3000)
	Send("^+{ф}");выделить
    Send("^{INSERT}");копировать
	Sleep(2000)

;~ 	Send("!{TAB}")
	WinWaitActive("[class:XLMAIN]","",5)

	Send("^+{м}");вставить

	WinWaitActive("[class:Windows.UI.Core.CoreWindow]","",5)


EndFunc   ;==>clicks

start()
$hDll = DllOpen("user32.dll")
While 1
    $lkmpressed = _IsPressed("01", $hDll)
    If $lkmpressed Then
        clicks()
    EndIf
WEnd;$$hDlll
;~ DllClose()

Примитивно, но как получается ;D
 

Вложения

  • МММ.jpg
    МММ.jpg
    182.8 КБ · Просмотры: 10

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
TiranCool, я не вижу WinActivate, а только WinWaitActive

Так пробовали?
Код:
WinActivate("[CLASS:XLMAIN]")
WinWaitActive("[CLASS:XLMAIN]", Null, 5)



Добавлено:
Сообщение автоматически объединено:

Excel Management
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
Код:
Func clicks()

	Sleep(3000)
	Send("^+{ф}");выделить
    Send("^{INSERT}");копировать
	Sleep(2000)



	WinActivate("[CLASS:Windows.UI.Core.CoreWindow]")
	WinWaitActive("[CLASS:Windows.UI.Core.CoreWindow]","",5)
	Send("^+{м}");вставить
;~ 	Send("!{TAB}")

;~ 	WinActivate("[CLASS:XLMAIN]")
;~ 	WinWaitActive("[CLASS:XLMAIN]", Null, 5)






EndFunc   ;==>clicks

Если я все правильно сделал, то должен был переключиться на PDF, но это не произошло(((
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Попробуйте по заголовку или вместе с ним

Код:
WinActivate("[TITLE:Reader; CLASS:Windows.UI.Core.CoreWindow]")
;Или
WinActivate("Reader")
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
Альтернативный способ не работает, проверял качал уже, тем более надо чтобы все было автоматически
 
A

Alofa

Гость
TiranCool сказал(а):
... Требуется переключаться между Exel и PDF файлами...
Скорее всего вам не это нужно. Объясните словами суть вашей задумки по автоматизации. Какие файлы в каких программах открыты.
 
Автор
T

TiranCool

Новичок
Сообщения
78
Репутация
0
При нажатии мышкой в ячейку Exel, взять из нее циферки, перейти в файл PDF произвести поиск и распечатать страницу с совпадением в формате А6, если есть возможность сделать это в неавтивных окнах(скрытых).


Добавлено:
Сообщение автоматически объединено:

Код:
WinActivate("[TITLE:Reader; CLASS:Windows.UI.Core.CoreWindow]")
;Или
WinActivate("Reader")

Не работает, звук типо ошибки звучит
 
Верх