简体   繁体   中英

How to click a particular Row in WpfCalendar of Flights Reservation Application in UFT

As per need, I want to select the Second Row from FlightsGrid Image shown below. Applying below Code, I am getting RowCount as 6 but not able to click on 3rd Row.

Set ODesc = Description.Create
oDesc("micclass").value = "WpfTable"
Set objchild = WpfWindow("HPMyFlightSampleApplication").WpfTable("Table_FlightsGrid")
objCount = objchild.rowcount
objCount(2).click

Image from Flight Reservation Application:

在此处输入图片说明

The WpfTable object is not a collection, it doesn't support indexing. Did you try using its SelectRow method?

First, why are you using DP here if you are able to get row count of table. Following two lines will give you row count of the table:

Set objchild = WpfWindow("HPMyFlightSampleApplication").WpfTable("Table_FlightsGrid")
objCount = objchild.rowcount

Second, try using its SelectRow method to select required row.

As @Motti suggested, you can use SelectRow . Or if you want to go more in depth and want to select particular cell (which will eventually select the entire row), you can use SelectCell like this way:

'Rows and Columns indexes are 0-based
iCols = WpfWindow("devname:=HPE MyFlight Sample Application").WpfTable("devname:=flightsDataGrid").ColumnCount
iRows = WpfWindow("devname:=HPE MyFlight Sample Application").WpfTable("devname:=flightsDataGrid").RowCount

sFlightNum = "12274 NW"

For i = 0 To iRows
    If WpfWindow("devname:=HPE MyFlight Sample Application").WpfTable("devname:=flightsDataGrid").GetCellData(i, 4) = sFlightNum Then
        WpfWindow("devname:=HPE MyFlight Sample Application").WpfTable("devname:=flightsDataGrid").SelectCell i, 4
        Exit For
    End If
Next

Here is the screenshot: 在此处输入图片说明

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM