Tôi có một điều khiển sửaSửa chụp kiểm soát nhập key
HWND hInput = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", "",
WS_CHILD | WS_VISIBLE | WS_VSCROLL | ES_MULTILINE | ES_AUTOVSCROLL,
0, 0, 100, 100, hwnd, (HMENU)IDC_MAIN_INPUT, GetModuleHandle(NULL), NULL);
và một nút:
HWND hSendButton = CreateWindowEx(WS_EX_CLIENTEDGE,"BUTTON","Send!",
BS_DEFPUSHBUTTON | WS_VISIBLE | WS_CHILD,
0,0,0,0,hwnd,(HMENU)IDC_MAIN_SENDBUTTON,GetModuleHandle(NULL),NULL);
Có cách nào để xem khi phím Enter được nhấn trong khi gõ vào ô sửa đổi kiểm soát và gửi một tin nhắn như nút được nhấn?
Tôi nghĩ rằng có lẽ
SendMessage(hwnd,WM_COMMAND,(WPARAM)IDC_MAIN_SENDBUTTON,LPARAM(0));
sẽ làm công việc cho gửi tin nhắn nhưng tôi vẫn đang bị mắc kẹt tại chụp phím Enter.
Cảm ơn bạn trước.
Cách truyền thống để làm điều này là để tuyên bố một bảng gia tốc xác định ENTER như lập bản đồ cho 'IDC_MAIN_SENDBUTTON' . Cũng lưu ý rằng 'GetModuleHandle (NULL)' không phải là thực hành tốt nhất vì nó đặt các cửa sổ của bạn trong không gian tên của tệp thực thi chính thay vì mô đun đã tạo cửa sổ. –