<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Нажатие на элемент окна]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=17896&amp;type=atom" />
	<updated>2023-08-03T09:59:07Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=17896</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158938#p158938" />
			<content type="html"><![CDATA[<p>Там скрипт создает папку с именем которое я до этого скопировал, потом в нее сохраняет картинку из Google Chrom, потом копирует эту папку и вставляет на сервер, а потом с сервера в базу. Просто оч много нажатий мышкой, я думал можно конкретно нажимать на элемент что бы понадежнее было.</p>]]></content>
			<author>
				<name><![CDATA[D@rkSIDeR008]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33486</uri>
			</author>
			<updated>2023-08-03T09:59:07Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158938#p158938</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158937#p158937" />
			<content type="html"><![CDATA[<p>А на фига тогда все эти нажатия, если можно просто папку создать?</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2023-08-03T09:20:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158937#p158937</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158936#p158936" />
			<content type="html"><![CDATA[<p>Ну я так и написал, просто кликая по координатам, я просто думал можно как то по всем элементам кликать, но видимо не по всем.<br />Вышло вот так, не знаю правильно ли я пишу вообще, но он работает.<br /></p><div class="codebox"><pre><code>#SingleInstance
#Warn
#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%

Process, Close, AutoHotkey.exe
Process, Close, AutoHotkey.exe


PID:=DllCall(&quot;GetCurrentProcessId&quot;)
query:=&quot;SELECT Handle FROM Win32_Process WHERE Caption=&#039;AutoHotkey.exe&#039;&quot;

If (oWMI:=ComObjGet(&quot;winmgmts:&quot;).ExecQuery(query)).Count&gt;1
   For colItem In oWMI
      If colItem.Handle!=PID
         colItem.Terminate()



Sleep, 200

CapsLock::

Q1 := ClipboardAll
Sleep, 200

WinActivate, ahk_class Chrome_WidgetWin_1
Sleep, 350
  SendMessage, 0x50,, 0x4090409,, A ; английский
Sleep, 200
Click right
Sleep, 100
SetCapsLockState, off
Sleep, 100
ControlSend,, {Down}{Down}, ahk_class Chrome_WidgetWin_1
Sleep, 200
ControlSend,, {Enter}, ahk_class Chrome_WidgetWin_1
Sleep, 200
WinWait, ahk_class #32770,
IfWinNotActive, ahk_class #32770, , WinActivate, ahk_class #32770,
WinWaitActive, ahk_class #32770,
Sleep, 200
  SendMessage, 0x50,, 0x4090409,, A ; английский
Sleep, 300
ControlSend,, {CTRLDOWN}c{CTRLUP}, ahk_class #32770
Sleep, 200
Q2 := ClipboardAll
Sleep, 200
DOWNLOAD:= &quot;C:\Users\User\Downloads\&quot;
Clipboard:= DOWNLOAD
Sleep, 200
ControlSend,, {CTRLDOWN}v{CTRLUP}, ahk_class #32770
Sleep, 500
Send, {Enter}
Sleep, 200
ControlClick, x206 y82, ahk_class #32770
Sleep, 100
Send, {Space}
Sleep, 200
Clipboard:= Q1
Sleep, 500
Send, {CTRLDOWN}v{CTRLUP}
Sleep, 500
Send, {Enter}
Sleep, 200

IfWinActive, переименование
{
   Sleep, 300
   ControlSend,, {Enter}, переименование
   Sleep, 650
}

IfWinActive, Подтверждение замены папки
{
   Sleep, 300
   Send, {Enter}
   Sleep, 650
}

Send, {Enter}
Sleep, 200
ControlClick, x261 y373, Сохранение
Sleep, 200
Send, {CTRLDAWN}a{CTRLUP}
Sleep, 300
Clipboard:= Q2
Sleep, 500
Send, {CTRLDOWN}v{CTRLUP}
Sleep, 500

WinActivate, ahk_class #32770
Sleep, 200
MouseClick, right,  378,  47
Sleep, 200
Send, {Down}{Down}{Enter}
Sleep, 200
Send, {Tab}
Sleep, 100
Send, {Tab}
Sleep, 500
FolderPath := Trim(Clipboard)
Sleep, 500

ControlClick, Со&amp;хранить, ahk_class #32770
Send, {Space}
Sleep, 500

Run, explorer.exe &quot;%FolderPath%&quot;
Sleep, 450
Send, {Backspace}
Sleep, 450
Send, {CTRLDOWN}c{CTRLUP}
Sleep, 300
WinClose, Загрузки
Sleep, 400
WinActivate, ahk_class RAIL_WINDOW
Sleep, 500
ControlClick, x102 y260, ahk_class RAIL_WINDOW
Sleep, 350
WinWait, Выберите файл с изображением (удаленный),
IfWinNotActive, Выберите файл с изображением (удаленный), , WinActivate, Выберите файл с изображением (удаленный),
WinWaitActive, Выберите файл с изображением (удаленный),
Sleep, 200
Folder1C:= &quot;C:\Users\UserTz7\Documents\&quot;
Sleep, 200
Send, %Folder1C%
Sleep, 100
Send, {Enter}
Sleep, 200
ControlClick, x519 y236, Выберите файл с изображением (удаленный)
Sleep, 200
Send, {CTRLDOWN}v{CTRLUP}
Sleep, 500
Send, {Enter}
Sleep, 200
Send, {Right}
Sleep, 100
Send, {Enter}
Sleep, 350

Clipboard:= Q1
Sleep, 200
Send, {CTRLDOWN}v{CTRLUP}
Sleep, 200
Send, {CTRLDOWN}{Enter}{CTRLUP}
Sleep, 400
Send, {CTRLDOWN}{Enter}{CTRLUP}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[D@rkSIDeR008]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33486</uri>
			</author>
			<updated>2023-08-03T05:04:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158936#p158936</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158935#p158935" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong><br />В этом случае не так. ControlClick только поставит фокус, а вот ControlSend, DirectUIHWND1, {Space} запустит.</p><p><strong>D@rkSIDeR008</strong><br />AhkSpy может нажать с помощью DoDefaultAction, но тут вам придётся во многом разобраться.<br />Думаю ControlClick и ControlSend самый простой вариант, если кнопка всегда находится в одних и тех же координатах, в данном случае вроде так и есть.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2023-08-02T18:03:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158935#p158935</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158933#p158933" />
			<content type="html"><![CDATA[<p>При помощи команды <em>ControlGetText</em> можно в окне целевой программы перебрать все элементы управления, определив таким образом <strong><em>Control Hwnd</em></strong> того самого элемента который содержит надпись &quot;Создать папку&quot;. Когда узнаете <strong><em>Control Hwnd</em></strong>, сможете посылать в этот элемент щелчок мыши.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2023-08-02T12:06:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158933#p158933</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158932#p158932" />
			<content type="html"><![CDATA[<p>Не разобрался как скрин отправить.<br />Отправляю текстом, то что выдает AhkSpy.ahk.<br /></p><div class="codebox"><pre><code> ( Mouse )  pause 
Screen:  x206 y170  ▪  Window:  x206 y82  ▪  Client:  x198 y51  ▪   control click 
Relative window:  0.3016, 0.1712  for w683 h479  ▪  Relative client:  0.2969, 0.1159  for w667 h440
Relative active window:  x-25 y-120  ▪  class TaskSwitcherWnd exe Explorer.EXE hwnd 0x201ec
 ( PixelColor ) 
RGB:  0x663977  ▪  #663977  ▪  BGR:  0x773966  ▪  #773966  ▪  Invert RGB:  0x99C688  ▪  #99C688  ▪            
 ( Window )  flash 
ahk_class #32770 ahk_exe chrome.exe ahk_id 0x2f03d6 ahk_pid 4900  ▪  Create info time:  15:46:11.148
Cursor:  Arrow  ▪  Caret position undefined  ▪  Client area:  x8 y31 w667 h440  ▪  WM_NCHITTEST:  HTCLIENT := 1
Focus control:  
 ( Control )  flash  open as window 
ClassNN:  DirectUIHWND1  ▪  Class:  DirectUIHWND
HWND:  0x2a04ae  ▪  Style:  0x56000000  ▪  ExStyle:  0x00010000  ▪   show styles   ▪   update styles 
 show / hide   ▪   close   ▪   View to tree   ▪   Get child   ▪   Get parent   ▪  Parent control:  DUIViewWndClassName  ▪  0x1f054c
 ( Position ) 
Pos:  x8 y68  ▪  x²674 y²418  ▪  Size:  w667 h351
Relative client area:  x0 y37  ▪  x²666 y²387  ▪  Relative screen:  x8 y156  ▪  x²674 y²506
Mouse relative control:  x198 y14  ▪  0.2969, 0.0399  ▪  Relative parent:  x0 y0  ▪  DUIViewWndClassName  ▪   flash  &gt; 
 ( Accessible )  flash 
Type:  Real Object  ▪  Id:  0  ▪   Get path   ▪   DoDefaultAction 
 ( Position relative ) 
Screen: x127 y158  ▪  x²234 y²183  ▪  Size: w108 h26  ▪  Mouse: x79 y12
Window: x127 y70  ▪  x²234 y²95  ▪  Client: x119 y39  ▪  x²226 y²64  ▪  Control: x119 y2  ▪  x²226 y²27
 ( Name )  copy 
Создать папку
 ( State: 0x00000000 ) 
обычный  ▪  0x00000000

 ( Role ) 
кнопка  ▪  code: 43
 ( Action ) 
Click  ▪   Execute 
 ( Description ) 
Создание папки.
 ( Focus - Role ) 
неизвестный объект  ▪  code: 9</code></pre></div>]]></content>
			<author>
				<name><![CDATA[D@rkSIDeR008]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33486</uri>
			</author>
			<updated>2023-08-02T09:46:33Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158932#p158932</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158931#p158931" />
			<content type="html"><![CDATA[<p>Через ControlClick работает если элемент есть в Windows Text, а в AhkSpy отображается в другом поле и поэтому не работает, я просто использую не стандартный Spy а AhkSpy.ahk.</p>]]></content>
			<author>
				<name><![CDATA[D@rkSIDeR008]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33486</uri>
			</author>
			<updated>2023-08-02T09:29:46Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158931#p158931</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158930#p158930" />
			<content type="html"><![CDATA[<p>У &quot;ControlClick&quot; есть возможность нажимать на конкретный элемент окна. Если кнопка &quot;Создать папку&quot; определяется через AhkSpy, то её значение и надо вписать в ControlClick.<br />Точку в названии темы уберите, а то нагорит. )</p>]]></content>
			<author>
				<name><![CDATA[Foma]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=31521</uri>
			</author>
			<updated>2023-08-02T08:29:37Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158930#p158930</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Нажатие на элемент окна]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=158929#p158929" />
			<content type="html"><![CDATA[<p>Есть обычное окно &quot;Сохранения&quot;, в нем есть кнопка &quot;Создать папку&quot; и хочу что бы скрипт нажимал на нее.<br />Я попробовал несколько способов:<br />1-ый способ, я просто сделал нажатие ПКМ и потом нажать &quot;Создать папку&quot; в меню.<br /></p><div class="codebox"><pre><code>
ControlClick,  x400  y50, ahk_class #32770, right
Sleep, 200
Send, {TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}
Sleep, 100
Send, {Rigt}
Sleep, 100
Send, {Enter}
</code></pre></div><p>Но этот способ не понравился.</p><p>Потом попробовал способ TAB ом прокликать до нужного элемента окна:<br /></p><div class="codebox"><pre><code>
Send, {TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}
Sleep, 100
Send, {Rigt}
Sleep, 100
Send, {Enter}
</code></pre></div><p>Но этот способ глючит, иногда нажимает не в тот элемент окна.</p><p>Через AhkSpy видна эта кнопка и текст на ней он видит &quot;Создать папку&quot;.<br />Возможно ли как то нажать на прямую на кнопку?</p>]]></content>
			<author>
				<name><![CDATA[D@rkSIDeR008]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33486</uri>
			</author>
			<updated>2023-08-02T07:41:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=158929#p158929</id>
		</entry>
</feed>
