Как получить доступ к кнопке в TDBNavigator (сборка exe с Delphi) с использованием pyWinAuto - PullRequest
0 голосов
/ 29 февраля 2012

Как получить доступ к кнопке В TDBNavigator с использованием pyWinAuto?

при вызове метода id print_control_identifiers я не могу найти кнопки в DBNavigator.Вот мой код:

import time

try:
   from pywinauto import application
except ImportError:
   import os.path
   pywinauto_path = os.path.abspath(__file__)
   pywinauto_path = os.path.split(os.path.split(pywinauto_path)[0])[0]
   import sys
   sys.path.append(pywinauto_path)
   from pywinauto import application

from pywinauto import tests
from pywinauto.findbestmatch import MatchError
from pywinauto import findwindows
from pywinauto import WindowAmbiguousError
from pywinauto.controls import WrapHandle

from pywinauto.timings import Timings
Timings.Fast()

app = application.Application()
app.connect_(path = "D:\SharedProjects\Projects\pyWinAuto\PYWINAUTO.exe")
pwin = app.MAIN
pwin.MenuSelect("Transaksi->Form 2")


frmDua = app['Form Dua']
frmDua.print_control_identifiers()

dbNavigator = frmDua['TDBNavigator']
dbNavigator.print_control_identifiers()

Результат dbNavigator.print_control_identifiers ():

Control Identifiers:
TDBNavigator - ''   (L673, T285, R1335, B310)
'3' 'TDBNavigator'

в TDBNavigator нет кнопки.Итак, как я могу получить доступ к btnFirst, btnPrev, btnInsert и т. Д.

1 Ответ

0 голосов
/ 29 февраля 2012

Да, наконец я нашел

dbNavigator = frmDua['TDBNavigator']
dbNavigator.SetFocus()
SendKeys.SendKeys("""{LEFT 10}""") #Move Cursor To Most LeftButton
SendKeys.SendKeys("""{RIGHT 4}""") #Move Cursor To InsertButton
SendKeys.SendKeys("""{SPACE}""")   #Perform Click On Insert Button
...