01/10/2018, 09:31

Tạm ngưng gõ tắt trong Unikey

Hi All
Mặc định Unikey khi dùng tính năng gõ tắt thì nó sẽ áp dụng cho tất cả những nơi có thể nhập liệu từ bàn phím. Bây giờ mình có chương trình có 2 textbox. Mình muốn ở txt1 thì cho phép sử dụng gõ tắt còn ở txt2 thì mình vô hiệu hóa gõ tắt
vd: gõ tắt vn -> việt nam
ở txt1: gõ “vn” ra “việt nam”
ở txt2: gõ “vn” ra “vn”
Vậy có cách nào để làm việc này không.
ps: Trong Unikey có tính năng check chọn cho phép gõ tắt hay không nhưng mình muốn làm nó một cách tự động.Bạn nào có cao kiến gì không…

*grab popcorn* viết 11:38 ngày 01/10/2018

Bạn thử nhấn Shift + Space sau từ gõ tắt xem
Như bth dnh [space] -> dạy nhau học
Thì bây giờ dnh [shift+space] -> dnh

Thênh Thang viết 11:39 ngày 01/10/2018

Mình muốn làm tự động cơ
Shift + Space hoặc Pause/Break mình tham khảo qua nhưng không được với mong muốn của mình

Trần Hoàn viết 11:41 ngày 01/10/2018

Unikey không phải là nhập liệu, Unikey là keyboard hook.
ví dụ bạn bấm aa, nếu không có Unikey, hệ thống sẽ thực hiện như sau:

System.Out('a');
System,Out('a')

Nếu có Unikey:

System.Out('a');
Press(Keyboard.Key.BackSpace);
System.Out('â');

Đây là lý do khi bạn đang dùng Windows Explorer duyệt thư mục “C:\Windows\system32” mà bấm “AA” thì Windows Explorer sẽ thực hiện 2 thao tác

  1. Select thư mục hoặc file nào đó gần nhất bắt đầu bằng A (ví dụ thư mục “ar-SA”)
  2. Bạn sẽ quay về “C:\Windows” do Unikey đã SendKey “BackSpace”, tương đương với thao tác “Back” của Windows Explorer

Để giải quyết vấn đề của bạn đã đưa, mình xin có ý kiến như thế này:

  1. Nếu bạn muốn bảng gõ tắt giống bảng gõ tắt của Unikey, thì bạn tắt chức năng gõ tắt của Unikey đi, rồi xây dựng event gõ tắt cho riêng txt1, lấy dữ liệu từ file gõ tắt của Unikey (thường là C:\Program Files\UniKey\ukmacro.txt nhưng mỗi máy một kiểu ai mà biết được?)
  2. Nếu bạn không cần giống bảng gõ tắt của Unikey thì bạn xây dựng dữ liệu gõ tắt cho txt1 ở file nào đó không phải file gõ tắt của Unikey.
Thênh Thang viết 11:42 ngày 01/10/2018

Cám ơn câu trả lời của bạn
Vấn đề bạn nói chính là vấn đề mình đang mắt phải
Mình đã xây dựng được một tính năng gõ tắt riêng và tích hợp ngay trong phần mềm
Nên nếu bật cả 2 tính băng gõ tắt trong phần mềm và trong unikey thì nó sảy ra xung đột. Nên mình muốn tạm ngưng gõ tắt của unikey đi
Nhưng nếu mình ngưng hoàn toàn gõ tắt thì khi người dùng sử dụng word excel hay một chương trình nào khác ko được tích hợp chức năng gõ tắt thì lại ko gõ tắt được. Nên mình chỉ muốn ngưng gõ tắt trong chương trình của mình mà thôi.còn ở những nơi khác vẫn sử dụng được gõ tắt trong unikey đươc.

Trần Hoàn viết 11:46 ngày 01/10/2018

Không sao đâu bạn, người ta cũng quen với việc phải tắt Unikey trong hàng nghìn ứng dụng rồi mà, tắt thêm 1 cũng không sao đâu :))

Bài liên quan
0