Monday, November 30, 2015

Chương I: Lập trình auto đơn giản với Sikuli - Bài 5: Làm việc cùng thanh trượt

Trong bài này, chúng tôi sẽ hướng dẫn bạn cách thức làm việc với thanh trượt cùng hai hàm drapDrop() và spatial operators.
Giả sử chúng ta muốn giảm tốc độ Spesking Rate. Tất nhiên thao tác sẽ là kéo thanh trượt về phía bên trái trong cửa sổ tùy chọn Speech.


Hàm giúp chúng ta thực hiện việc kéo là drapDrop(). Hàm này yêu cầu đưa vào 2 hình ảnh. Hình ảnh đầu tiên là đối tượng đùng để kéo, hình ảnh thứ hai mô tả vị trí đích thanh trượt cần tới.

Đây là kết quả của câu lệnh sau khi chụp các đối tượng.

Nhưng điều gì sẽ xảy ra nếu có nhiều hơn hai thanh trượt. Làm thế nào để chúng ta chắc chắn được thanh trượt bên phải sẽ được kéo? Ví dụ vừa rồi chỉ làm việc khi cửa sổ có 1 thanh trượt. Làm thế nào khi chúng ta gặp phải trường hợp tương tự như tìm kiếm thành phần? Chúng ta hãy xem xét với ví dụ cửa sổ Sound dưới đây.

Giả sử chúng ta muốn vặn nhỏ Alert volume. Để Sikuli chọn chính xác thanh trượt, chúng ta cần lập trình cho Sikuli tìm bên phải của nhãn Alert volume chứ không phải Output volume. Sikuli cung cấp một cách thức để chọn chính xác vùng không gian. Ở đây chúng ta sẽ dùng hàm right().

Câu lệnh này có nghĩa là Sikuli sẽ tìm kiếm vùng Alert volume rồi tìm kiếm con trượt ở bên phải. Con trượt được tìm thấy và lưu trong biến t. Bây giờ chúng ta đã xác định được con trượt mong muốn, chúng ta có thể kéo nó sang trái bằng cách đưa hình ảnh Alert volume.

Trong ví dụ trên, chúng tôi sử dụng hình ảnh nhãn  Alert volume để điều khiển kéo con trượt sang trái. Nó cũng có thể tùy chỉnh bằng cách sử dụng tọa độ.

Ở đây, (x,y) là tọa độ của điểm cần kéo tới với cách lấy vị trí t làm gốc tọa độ. Câu lệnh này sẽ điều khiển Sikuli kéo sang bên trái 200px.

Bài tiếp theo chúng tôi sẽ hướng dẫn các bạn cách duyệt hình ảnh có xuất hiện trên màn hình hay không? Và các ứng dụng vô cùng bất ngờ từ nó.

Bài tiếp theo

2 comments:

  1. cho mình hỏi là cái mục tọa độ đó ác định bằng cách nào vậy

    ReplyDelete
  2. cho mình hỏi là cái mục tọa độ đó ác định bằng cách nào vậy

    ReplyDelete