Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Поиск окна в обычном скрипте и в Lua
SeregaB
сообщение 23.9.2019, 13:16
Сообщение #1


**

Neophyte
Сообщений: 47
Регистрация: 22.9.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.405



Столкнулся с тем, что приходится писать разные названия окон для поиска в обычном коде и в Lua (иначе Lua не может найти окно). В чем причина я не понимаю, может кто-нибудь может объяснить?


// Пример
set #h findwindow ("War Robots Steam") // найти окно War Robots Steam
if #h > 0 // если окно найдено
get windowpos #h #X #Y #width #height #result // получить его позицию и размеры
log "окно найдено" #X #Y #width #height #result // показать в логе
else
log Окно блокнота не найдено
end_if



--lua
local h = findwindow ("Robots Steam") -- найти окно War Robots Steam
if h then -- если окно найдено
log ("Найдено окон: " .. #h)
log (h[1][1]) -- показать в логе хендл окона
else
log ("Окно не найдено")
end
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 23.9.2019, 14:42
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26689
Пользователь №: 16.971
Возраст: 29



Цитата
"War Robots Steam"

Так найдёт только окно с именем "War Robots Steam".
Цитата
"Robots Steam"

А так "War Robots Steam" и "Robots Steam".
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SeregaB
сообщение 23.9.2019, 15:04
Сообщение #3


**

Neophyte
Сообщений: 47
Регистрация: 22.9.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.405



Цитата(cirus @ 23.9.2019, 14:42) *

Так найдёт только окно с именем "War Robots Steam".

А так "War Robots Steam" и "Robots Steam".

В Lua, если ввести "War Robots Steam", то окно не находит,
а если ввести "Robots Steam", то находит, вот в чем отличие.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Levo222
сообщение 23.9.2019, 15:08
Сообщение #4


*****

Journeyman
Сообщений: 399
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.689



Цитата(SeregaB @ 23.9.2019, 19:04) *

В Lua, если ввести "War Robots Steam", то окно не находит,
а если ввести "Robots Steam", то находит, вот в чем отличие.

А "War" находит? a русская? там может быть альткод в названии который обычный пилот не читает, а луа подавился. Всегда было интересно как ввести результат поиска по остаточному названию, например "War %№..." найти и ищет все слова начинающиеся на War
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SeregaB
сообщение 23.9.2019, 15:21
Сообщение #5


**

Neophyte
Сообщений: 47
Регистрация: 22.9.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.405



Цитата(Levo222 @ 23.9.2019, 15:08) *

А "War" находит? a русская? там может быть альткод в названии который обычный пилот не читает, а луа подавился. Всегда было интересно как ввести результат поиска по остаточному названию, например "War %№..." найти и ищет все слова начинающиеся на War

Так вот с обычным кодом находит по целому названию "War Robots Steam"

set #h findwindow ("War Robots Steam") // так находит в любом варианте

, а Lua находит только по части названия, тк "War" Lua почему то не может найти.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Levo222
сообщение 23.9.2019, 15:29
Сообщение #6


*****

Journeyman
Сообщений: 399
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.689



А в числовом значении как выглядит его название?

в старом пилоте у меня 35 названий процессов, а в новом всего 9, заставляет задуматься)

какая разница например межу названием 2724* ProgrammManager / 2724 > * ProgrammManager / 2724 ProgrammManager ? первые 2 типа он не видит
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SeregaB
сообщение 23.9.2019, 16:04
Сообщение #7


**

Neophyte
Сообщений: 47
Регистрация: 22.9.2019
Группа: Пользователи
Наличность: 0
Пользователь №: 19.405



Цитата(Levo222 @ 23.9.2019, 15:29) *

А в числовом значении как выглядит его название?

А как узнать числовое значение? Это не хендел окна?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.9.2019, 3:45
Сообщение #8


***********

Модератор UOPilot
Сообщений: 9.462
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27674
Пользователь №: 11.279



Цитата

А как узнать числовое значение? Это не хендел окна?

Вопрос примерно тот же. Что вы имеете ввиду?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
bumer
сообщение 5.10.2019, 16:29
Сообщение #9


****

Apprentice
Сообщений: 167
Регистрация: 2.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.998



а как в Lua сменить заголовок окна?
Код

--lua
local h = findwindow ("Блокнот")  -- найти окно  Блокнот
  if  h then   -- если окно найдено вот что дальше то?
    NewCaption ("Калькулятор")
  end

Так вроде не работает, что не так?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 5.10.2019, 18:01
Сообщение #10


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26689
Пользователь №: 16.971
Возраст: 29



Цитата
как в Lua сменить заголовок окна?

Код
--lua
local h = findwindow ("Блокнот")  -- найти окно  Блокнот
if  h then  
    setwindowtext (h[1][1], "Калькулятор")
end

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
bumer
сообщение 5.10.2019, 19:16
Сообщение #11


****

Apprentice
Сообщений: 167
Регистрация: 2.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 14.998



Цитата(cirus @ 5.10.2019, 18:01) *

Код
--lua
local h = findwindow ("Блокнот")  -- найти окно  Блокнот
if  h then  
    setwindowtext (h[1][1], "Калькулятор")
end


Спасибо!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 16.4.2024, 21:15
Designed by Nickostyle