Вы находитесь на странице: 1из 10

Thao tác Menu , Mouse , và

Keyboard (VC 6.0)

Giảng viên : Trần Anh Tuấn


Nội dung chính
 Giúpcho SV nắm được cách tạo và sử
dụng thành thạo :
 Các loại menu
 Menu Pull_Down
 Menu Cascading

 Menu Popup

 Cácsự kiện mouse


 Cách nhận và bắt các sự kiện bàn phím
Menu
 Giúp cho người dùng chọn thực hiện các
chức năng (bằng phím tắt , hoặc dùng
chuột nhấp vào từng menuitem )
 Có ba loại menu thông dụng

Cascading Menu Popup Menu


Pull_down Menu
Pull_down menu & Cascading Menu
 Tab ResourceView>Insert Menu>Create
Menu
 Check lại các ID sinh ra cho từng
menuitem
 Nếu muốn Cascading menu check thuộc
tính Popup
Pull_down menu & Cascading Menu
 Load menu:
 Dùng chức năng :

 Dùng lệnh :
 CMenu mainmenu;
 mainmenu.LoadMenu(IDR_MENU);
 SetMenu(&mainmenu);
Pull_down menu & Cascading Menu
 Cách disable một menuitem
 mainmenu.EnableMenuItem (ID_???, MF_BYCOMMAND |
MF_DISABLED | MF_GRAYED);

 Thao tác trên menuitem


 Classwinzard chọn ID cần thao tác
 Add sự kiện WM_COMMAND

 Đặt tên hàm tương ứng

 Viết đoạn ã xử lý
Popup Menu
 Cách tạo tương tự Pull_Down Menu
 Định nghĩa ID tương tự
 Classwinzard thêm function cho message
WM_CONTEXT_MENU

 void CBai3Dlg::OnContextMenu(CWnd* pWnd, CPoint point)


 {
 CMenu menupopup;
 menupopup.LoadMenu(IDR_MENU);
 CMenu* pPopup = menupopup.GetSubMenu(0);
 pPopup->TrackPopupMenu(TPM_LEFTALIGN |
TPM_RIGHTBUTTON , point.x,point.y,this);
 }
Thao tác Mouse
 Các thao tác chuột thông dụng:
 WM_LBUTTONDOWN
 WM_LBUTTONUP
 WM_LBUTTONBLCLK
 WM_RBUTTONDOWN
 WM_RBUTTONUP
 WM_RBUTTONBLCLK
 WM_MOUSEMOVE
 WM_MOUSEWEEL
 Add function tương ứng cho các sự kiện muốn
xử lý
Thao tác Keyboard
 Addfunction PreTranslateMessage và gửi
thông thông điệp cho WM_KEYDOWN:
 If (pMsg->message == WM_KEYDOWN)
 { SendMessage(WM_KEYDOWN,
 pMsg->wParam, pMsg->lParam); }
 Add
function tương ứng cho sự kiện
WM_KEYDOWN
 OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
 if (nChar == ‘{ký tự}') {do yourself }
 if (nChar == {Mã ký tự ảo}) {do yourseft }
Thao tác Keyboard
 {ký tự}
 ‘A’ … ‘Z’
 ‘1’ … ‘9’

 ‘a’ … ‘z’

 {Mã ký tự ảo}
 VK_LBUTTON , VK_RBUTTON , VK_CANCEL (Ctrl-break)…
 VK_BACK , VK_TAB , VK_RETURN (Enter) , ……
 VK_LEFT , VK_UP , VK_RIGHT , VK_DOWN , VK_PRIOR ,
VK_NEXT , VK_END, VK_HOME …..
 VK_ADD , VK_MULTIPLY , VK_SUBTRACT , VK_DIVIDE ….

Вам также может понравиться