Перейти к содержимому

Фотография

Не удается считать название окна


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 aiga

aiga

    Новый участник

  • Members
  • Pip
  • 13 сообщений
  • ФИО:Aiga

Отправлено 18 мая 2012 - 09:57

Здраствуйте! У меня следующая проблема: у меня сначала откывается одно приложение, потом второе, после закрытия второго нужно вернуться к первому. Но навзание окна может изменяться, поэтому по Caption обращаться не получается. Я хотела считывать название при первом открытии окна чтоб потом можно было его сравнить. Подскажите как это сделать?
Или может другой какой-то есть способ обратиться к этому окну. CurrentWindow не работает. Еще вроде как-то по ID можно бы обращаться, но я не знаю как. Может подскажите как это сделать? Хотя первый способ предпочтительнее.
  • 0

#2 berzinc

berzinc

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 18 мая 2012 - 11:08

Wildcard: *

..."Caption=Book2 - Microsoft Excel"...
Change to
..."Caption={* - Microsoft Excel}"...

SQAGetProperty:

Result = SQAGetProperty("Caption={* - Microsoft Excel}", "Caption", sWinCaption)

sWinCaption = Book2 - Microsoft Excel
  • 1

#3 aiga

aiga

    Новый участник

  • Members
  • Pip
  • 13 сообщений
  • ФИО:Aiga

Отправлено 21 мая 2012 - 08:11

Wildcard: *

..."Caption=Book2 - Microsoft Excel"...
Change to
..."Caption={* - Microsoft Excel}"...

SQAGetProperty:

Result = SQAGetProperty("Caption={* - Microsoft Excel}", "Caption", sWinCaption)

sWinCaption = Book2 - Microsoft Excel


Спасибо! Сделала следующим образом:
sWinCaption = "Кредит"
Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
if result then
Window CloseWin, "CurrentWindow", ""
end if

В данном случае помогло, но все таки остается вопрос о том как считать само название окна? Я ж так понимаю, что SQAGetProperty сравнивает Caption с переменной sWinCaption и выдает результат "да" или "нет". Но если я наперед не буду знать какое будет название окна, то как тогда быть?
  • 0

#4 berzinc

berzinc

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 21 мая 2012 - 10:31

Result=SQAGetProperty("CurrentWindow","Caption",value)

Help ->
recognition methods
context:window
WindowVP
  • 0

#5 berzinc

berzinc

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 21 мая 2012 - 11:06

Спасибо! Сделала следующим образом:
sWinCaption = "Кредит"
Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
if result then
Window CloseWin, "CurrentWindow", ""
end if

В данном случае помогло, но все таки остается вопрос о том как считать само название окна? Я ж так понимаю, что SQAGetProperty сравнивает Caption с переменной sWinCaption и выдает результат "да" или "нет". Но если я наперед не буду знать какое будет название окна, то как тогда быть?


Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
Если Result=0, в sWinCaption запишется полное название окна.

status% = SQAGetProperty(recMethod$, property$, value)

recMethod$ The recognition method values you use to identify an object depend on the object you are accessing. For example, if you are accessing a push button object, use the recognition method values listed for the PushButton user action command.

In addition, you might need to use Type= to specify the object type, and/or use context notation to specify the context for the object.

property$ A case-sensitive property name. See Specifying the Object Property for information on the property names you can specify for a given object.

value An output argument of type variant that will contain the retrieved property value.
  • 0

#6 aiga

aiga

    Новый участник

  • Members
  • Pip
  • 13 сообщений
  • ФИО:Aiga

Отправлено 21 мая 2012 - 12:27

Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
Если Result=0, в sWinCaption запишется полное название окна.

По теории оно то долно туда записывать название, но фактически у меня не получается. Пишу так:
Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
msgbox "" & sWinCaption
При этом сообщение выводится пустое, а в Result записывается 0. sWinCaption типа Variant.
Подскажите что я не так делаю?
  • 0

#7 berzinc

berzinc

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 21 мая 2012 - 12:52


Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
Если Result=0, в sWinCaption запишется полное название окна.

По теории оно то долно туда записывать название, но фактически у меня не получается. Пишу так:
Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
msgbox "" & sWinCaption
При этом сообщение выводится пустое, а в Result записывается 0. sWinCaption типа Variant.
Подскажите что я не так делаю?


Result = SQAGetProperty("Caption={Кредит *}", "Caption", sWinCaption)
  • 0

#8 aiga

aiga

    Новый участник

  • Members
  • Pip
  • 13 сообщений
  • ФИО:Aiga

Отправлено 21 мая 2012 - 13:42



Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
Если Result=0, в sWinCaption запишется полное название окна.

По теории оно то долно туда записывать название, но фактически у меня не получается. Пишу так:
Result = SQAGetProperty("Caption=Кредит *", "Caption", sWinCaption)
msgbox "" & sWinCaption
При этом сообщение выводится пустое, а в Result записывается 0. sWinCaption типа Variant.
Подскажите что я не так делаю?


Result = SQAGetProperty("Caption={Кредит *}", "Caption", sWinCaption)

Спасибо! Все заработало. :victory: А можно объяснить как работают эти скобки? На будущее :wink:
  • 0

#9 berzinc

berzinc

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 21 мая 2012 - 14:05


Result = SQAGetProperty("Caption={Кредит *}", "Caption", sWinCaption)

Спасибо! Все заработало. :victory: А можно объяснить как работают эти скобки? На будущее :wink:


Если использовать wildcard (* и ?) , то текст нужно ставить в скобки - {}
  • 1


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных