Tìm trong:Webe-CHÍP

Bộ gõ (kiểu Vni/Telex/Viqr)Tắt (Alt+T)Mở (Alt+M)

 
Trang chủ ĐÓ HỎI, ĐÂY TRẢ LỜI TT 339

Hạn chế phím được gõ trong VB6

Đó hỏi: Tôi đang có một chương trình nhập liệu. Xin e-CHÍP cho biết những thủ tục và hàm trong Visual Basic liên quan đến việc điều khiển những chữ người dùng nhập vào. Chẳng hạn, không cho người dùng gõ những ký tự đặc biệt (!,@,#,$,%,^,&,*,...). Nhờ vậy, đỡ tốn thời gian để máy kiểm tra và bỏ ký tự không hợp lệ như những chương trình thông thường. Cảm ơn e-CHÍP nhiều.

<anhkhoa1793@>

Đây trả lời: Để kiểm tra một phím gõ vào khi nhập liệu, bạn phải sử dụng thủ tục xử lý tình huống KeyPress của ô nhập liệu. Ngoài ra, muốn kiểm tra các phím đặc biệt như F1, F2,... F12, Ctrl, Alt, Shift... thì sử dụng thủ tục xử lý tình huống KeyDown của ô nhập liệu. Ví dụ sau đây minh họa cách kiểm tra để không cho nhập các ký tự !,@,#,$,%,^,&,* vào ô nhập liệu có tên Text1.
Trên form mặc định Form1, bạn vẽ một text box có tên mặc định Text1, rồi gõ vào đoạn mã 1. Trong đoạn mã 1 có sử dụng lệnh gõ phím bằng lập trình, có cú pháp như sau:
SendKeys <Chuỗi ký tự>
trong đó: <Chuỗi ký tự> được bao bởi dấu nháy kép.
Lưu ý:
1) Với các ký tự gõ được từ bàn phím bằng tay, bạn đặt ký tự đó trong chuỗi. Ví dụ:
SendKeys “abc” tương đương với gõ 3 phím a, b, c từ bàn phím.
2) Với các ký tự không gõ được từ bàn phím bằng tay, bạn đặt ký tự đó trong chuỗi thông qua hàm Chr(<mã ASCII>). Ví dụ:
SendKeys Chr(32) & “abc” tương đương với gõ 4 phím SPACE, a, b, c từ bàn phím.
3) Với các phím chức năng đặc biệt, bạn bao tên phím trong cặp dấu ngoặc nhọn. Ví dụ:
SendKeys “{ENTER}” tương đương với gõ phím ENTER từ bàn phím.
SendKeys “{TAB}” tương đương với gõ phím TAB từ bàn phím.
SendKeys “{TAB}{ENTER}” tương đương với gõ 2 phím TAB, ENTER từ bàn phím.

Đoạn mã 1

Const cDacBiet = "!@#$%^&*"
Private Sub Text1_KeyPress(KeyAscii As Integer)
  If InStr(cDacBiet, Chr(KeyAscii)) Then
    MsgBox "Bạn không được gõ các ký tự: " & cDacBiet
    SendKeys "{BACKSPACE}"   ‘ Xóa ký tự vừa gõ vào
  End If
End Sub

CHƯƠNG CAN CHÍP

Sửa lỗi Safely Remove Hardware

Đó hỏi: Lúc đầu tôi cắm ổ đĩa USB vào là lập tức xuất hiện biểu tượng USB trên Taskbar. Nhưng về sau, biểu tượng này không xuất hiện nữa mặc dù tôi vẫn làm việc được với ổ đĩa USB như bình thường. Tuy nhiên, tôi không thể Turn off USB theo Safe remove được. Mong e-CHÍP giúp đỡ.
<le_tuan_huy@>
Đây trả lời: Biểu tượng Safely Remove Hardware của Windows rất hay bị lỗi này sau một thời gian sử dụng máy và có thể bị đi bị lại nhiều lần. Bạn có thể khắc phục bằng các cách dưới đây:
1. Bấm phím phải chuột vào đồng hồ hệ thống (trong Taskbar) rồi chọn lịnh Customize Notifications > bấm nút Restore Default hay bấm chuột vào mục Safely Remove Hardware rồi thay đổi chọn lựa giữa Hide when inactive và Always show.

2. Vào Start > Run, gõ dòng lịnh RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll rồi bấm Enter > Trong hộp thoại Safely Remove Hardware, bạn dùng chuột chọn thiết bị USB rồi bấm nút Stop. Chú ý: Bạn có thể tạo shortcut chạy dòng lịnh này trên Desktop để mở nhanh hộp thoại Safely Remove Hardware khi cần.

3. Dùng phần mềm USB Safely Remove (http://www.safelyremove.com/) để thay thế. Với phần mềm này, bạn có thể tùy biến menu Safely Remove như: - Gỡ bỏ thiết bị USB bất kỳ (ADSL, modem, scanner...) – Thay đổi tên tùy thích cho thiết bị khi hiển thị - Thay đổi biểu tượng cho thiết bị - Gỡ bỏ thiết bị bằng phím tắt – Báo hiệu bằng âm thanh khi gắn hay tháo thiết bị.

LÊ HOÀN

[Đầu trang]