Bàn phím máy điện thoạ i

Một phần của tài liệu đồ án tốt nghiệp nghiên cứu và xây dựng ứng dụng từ điển trên điện thoai (Trang 69)

Máy điện thoại di động Series 60 cũng như các điện thoại di động thông thường khác, nhập liệu qua một bàn phím số với 12 phím.

Hình 6.2 Bàn phím điện thoại Series 60

Cụ thể để được ký tự ‘e’ ta phải nhấn phím số 3 hai lần liên tục. Như vậy việc nhập từ cần tra trên điện thoại sẽ rất khác so với nhập trên các thiết bị khác có bàn phím ký tự. Đặc biệt là việc nhập tiếng Việt không thể gõ theo kiểu VNI lẫn Telex.

Để giải quyết vấn đề này chúng ta xem xét cơ chế Front End Process của hệ điều hành Symbian. Front End Process cho phép nhập các ký tự không gõ trực tiếp bằng bàn phím được, bao gồm cả chức năng nhận dạng ký tự viết tay hoặc tiếng nói. Mỗi một Front End Process cụ thể là một thư viện đa hình DLL thực thi giao diện (interface) chung Front End Process cho phép xử lý các sự kiện phím. Ví dụ cụ thể Front End Process mặc định của điện thoại xử lý phím như sau: nhấn phím số ‘3’ một lần là ký tự ‘d’, hai lần là ký tự ‘e’ và giữ 1s là ký tự số ‘3’… Các control giao diện nhập liệu cùa Symbian đều hỗ trợ cơ chế Front End Process. Sau khi Front End Process xử lý, ký tự kết quả được gửi về cho ứng dụng chứa control đó. Và các ứng dụng nhận kết quả này không quan tâm đến Front End Process nào đã hoạt động.

Như vậy vấn đề gõ tiếng Việt trên điện thoại Series 60 có thể giải quyết bằng các phương pháp sau:

ƒ Tự xây dựng một bộ Front End Process, cho phép gõ tiếng Việt trên điện thoại, ví dụ như nhấn phím số “2” một lần là ký tự ‘a’, hai lần là ký tự ‘ă’, ba lần là ký tự ‘â’… Giải pháp này gặp khó khăn khi phải tự xây dựng DLL xử phím tất cả các phím trong điện thoại với một cơ chế hoàn toàn mới.

ƒ Bắt sự kiện phím của control nhập liệu, ứng với một phím đặc biệt nào đó sẽ thay bằng ký tự tiếng Việt tương ứng. Cụ thể như người dùng muốn nhập chữ ‘ă’ có thể gõ như sau ‘a#’, muốn nhập chữ ‘ằ’ gõ ‘a#*’. Cách gõ tiếng Việt như trên tương tự bộ gõ tiếng Việt trên máy tính. Chúng em đã chọn giải pháp này để xử lý tiếng Việt cho ứng dụng từđiển.

ƒ Dựa trên giải pháp đã chọn, chúng em xây dựng một control riêng kế thừa từ control nhập liệu CEikEdwin (một dạng textbox) của Symbian. Trong đó, hàm xử lý sự kiện sẽ bắt các phím đặt biệt ‘#’ và ‘*’ để nhập ký tự tiếng Việt. Khi khởi động chương trình từđiển, control nhập liệu sẽ được đăng kí với độ ưu tiên cao hơn cơ chế Front End Process, cho phép việc xử lý sự kiện phím xảy ra trước khi Front End Process xử lý.

Một phần của tài liệu đồ án tốt nghiệp nghiên cứu và xây dựng ứng dụng từ điển trên điện thoai (Trang 69)