• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Gõ Tiếng Việt trong ứng dụng VB6 Không Hook không Dll,OCX

Bộ sưu tập mã nguồn các ứng dụng tiện ích
Hình đại diện của người dùng
tuyen_dt18
Guru
Guru
Bài viết: 256
Ngày tham gia: T.Bảy 19/04/2008 8:46 pm
Đến từ: Hưng Yên
Been thanked: 43 time
Liên hệ:

Gõ Tiếng Việt trong ứng dụng VB6 Không Hook không Dll,OCX

Gửi bàigửi bởi tuyen_dt18 » T.Năm 26/03/2009 2:49 am

Tên chương trình: Gõ tiếng việt không cần bộ gõ trong ứng dụng VB
Ngôn ngữ lập trình: VB6
Tác giả: tuyen_dt18
Chức năng: Gõ Tiếng Việt


Đây là module xử lý Tiếng Việt gồm cả chương trình demo nữa.
Chương trình không sử dụng hook bàn phím, không xài component gì hết.
Chỉ sử dụng được trong riêng ứng dụng bằng cách thao tác trong các sự kiện KeyPress và KeyDown của đối tượng TextBox.
Tập tin đính kèm
VBKey.rar
Gõ tiếng việt không cần bộ gõ trong ứng dụng VB
(9.07 KiB) Đã tải 3295 lần


Hỏi ý kiến tác giả trước khi sử dụng hoặc trích dẫn rõ nguồn bài viết khi sử dụng.

Hình đại diện của người dùng
tuyen_dt18
Guru
Guru
Bài viết: 256
Ngày tham gia: T.Bảy 19/04/2008 8:46 pm
Đến từ: Hưng Yên
Been thanked: 43 time
Liên hệ:

Re: Gõ Tiếng Việt trong ứng dụng VB6 Không Hook không Dll,OCX

Gửi bàigửi bởi tuyen_dt18 » T.Tư 08/04/2009 8:10 pm

Hôm nay mình Post tiếp một chương trình Demo của chương trình cũ (Gõ Tiếng Việt Telex, tùy chọn viết hoa đầu câu - sau dấu chấm và dấu cách ". ", tùy chọn đặt dấu kiểu cũ hay mới) ở trên có sửa đổi.

Cụ thể là mình dùng kỹ thuật MultiCasting để Áp dụng tính năng tự động nhận gõ Tiếng Việt mà không cần dùng bộ gõ cho tất cả các TextBox trong một ứng dụng, đỡ phải viết Code xử lý riêng cho mỗi TextBox.

Ở đây mình dùng Class Modules thay cho Module thông thường. Sau đó khai báo một biến đối tượng kiểu TextBox(ví dụ Public WithEvents AutoTB As TextBox-UniTextBox-FVUniTextBox,MsForms.TetBox,...Tùy vào tên TextBox mà các bạn đặt cho đúng.).

Tiếp đến là viết các sự kiện cần để xử lý Tiếng Việt cho biến đối tượng vừa khai báo:MouseDown,KeyDown,KeyPress,...
Sau đó mỗi khi muốn áp dụng, các bạn cần khai báo một biến thể hiện của Class Module đó(ví dụ trong Form:Dim SmartText As New clsAutoText), sau đó chỉ việc Set SmartText.AutoText="Tên của TextBox mà các bạn muốn áp dụng". Thế là OK.

Chú ý: Nếu không muốn phải viết nhiều lần Code, các bạn có thể Set ngay trong sự kiện Form_Load,...
Nhưng việc này đòi hỏi mỗi đối tượng TextBox phải có mộy biến thể hiện của Class. Không thể Set Biến thể hiện cho tất cả các TextBox cùng một lúc, vì nó sẽ chỉ nhận đối tượng TextBox cuối cùng mà các bạn gán thôi. Như mình, mình chỉ khai báo một biến thể hiện của Class, và trong mỗi sự kiện Got_Focus của mỗi TextBox mình lại thay đổi áp dụng cho TextBox có Focus. Việc này mất nhiều lần viết lại Code nếu như ứng dụng có quá nhiều TextBox, song nó tiết kiệm việc khai báo biến
Tập tin đính kèm
VBKey.rar
MultiCasting
(45.52 KiB) Đã tải 2063 lần
Hỏi ý kiến tác giả trước khi sử dụng hoặc trích dẫn rõ nguồn bài viết khi sử dụng.

Hình đại diện của người dùng
andylam1992
Thành viên danh dự
Thành viên danh dự
Bài viết: 380
Ngày tham gia: T.Hai 06/04/2009 12:57 pm
Đến từ: TP.HCM Q5
Has thanked: 2 time
Been thanked: 4 time
Liên hệ:

Re: Gõ Tiếng Việt trong ứng dụng VB6 Không Hook không Dll,OCX

Gửi bàigửi bởi andylam1992 » T.Ba 21/07/2009 11:46 am

Đây nè. Mình sưu tầm được trong src BlueMediaPlayer. Mình post lên chia sẽ cho mọi người.
vd.JPG
vd.JPG (12.13 KiB) Đã xem 7155 lần

VniUnicode.rar
Src
(2.54 KiB) Đã tải 2396 lần

不相信未作牺牲竟先可拥有
只相信是靠双手找到我欲求
Cần - Kiệm- Liêm(liêm kiết) - Nghĩa - Chí - Tín


Quay về “[VB] Mã nguồn chương trình tiện ích”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.0 khách