Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: Hàm GetKeyNameText SAO MÌNH KHÔNG sử dụng được

  1. #1
    Ngày gia nhập
    04 2008
    Bài viết
    244

    Mặc định Hàm GetKeyNameText SAO MÌNH KHÔNG sử dụng được

    Code:
    #include<windows.h>
    #include<iostream.h>
    int main()
    {
        char ch[256];
        while(1)
        GetKeyNameText(1,ch,256);
        cout<<ch<<"\n";
    }
    mình muốn là ấn Phím nào thì nó sẽ in ra màn hình tên của phím ấy mà khôg được

  2. #2
    No Avatar
    ngocbig Khách

    Bạn phải tạo win app và bắt message thì mới làm đc chứ.

    C++ Code:
    1. #include "stdafx.h"
    2. #include <windows.h>
    3.  
    4. LONG WINAPI WndProc (HWND, UINT, WPARAM, LPARAM);
    5.  
    6. int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
    7.                     LPSTR lpszCmdLine, int nCmdShow)
    8. {
    9.     WNDCLASS wc;
    10.     HWND hwnd;
    11.     MSG msg;
    12.  
    13.     wc.style = 0;                                   // Class style
    14.     wc.lpfnWndProc = (WNDPROC) WndProc;             // Window procedure address
    15.     wc.cbClsExtra = 0;                              // Class extra bytes
    16.     wc.cbWndExtra = 0;                              // Window extra bytes
    17.     wc.hInstance = hInstance;                       // Instance handle
    18.     wc.hIcon = LoadIcon (NULL, IDI_WINLOGO);        // Icon handle
    19.     wc.hCursor = LoadCursor (NULL, IDC_ARROW);      // Cursor handle
    20.     wc.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1); // Background color
    21.     wc.lpszMenuName = NULL;                         // Menu name
    22.     wc.lpszClassName = "MyWndClass";                // WNDCLASS name
    23.  
    24.     RegisterClass (&wc);
    25.  
    26.  
    27.     hwnd = CreateWindow (
    28.         "MyWndClass",               // WNDCLASS name
    29.         "SDK Application",          // Window title
    30.         WS_OVERLAPPEDWINDOW,        // Window style
    31.         CW_USEDEFAULT,              // Horizontal position
    32.         CW_USEDEFAULT,              // Vertical position        
    33.         CW_USEDEFAULT,              // Initial width
    34.         CW_USEDEFAULT,              // Initial height
    35.         HWND_DESKTOP,               // Handle of parent window
    36.         NULL,                       // Menu handle
    37.         hInstance,                  // Application's instance handle
    38.         NULL                        // Window-creation data
    39.         );
    40.  
    41.     ShowWindow (hwnd, nCmdShow);
    42.     UpdateWindow (hwnd);
    43.  
    44.     while (GetMessage (&msg, NULL, 0, 0)) {
    45.         TranslateMessage (&msg);
    46.         DispatchMessage (&msg);
    47.     }
    48.     return msg.wParam;
    49. }
    50.  
    51. LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam,
    52.                           LPARAM lParam)
    53. {
    54.     TCHAR keyName[30];
    55.  
    56.     switch (message) {
    57.  
    58.     case WM_KEYDOWN:
    59.         GetKeyNameText(lParam,keyName,sizeof(keyName));
    60.         strcat(keyName," key was pressed");
    61.         MessageBox(hwnd,keyName,"Message",MB_OK|MB_ICONINFORMATION);
    62.         return 0;
    63.  
    64.     case WM_DESTROY:
    65.         PostQuitMessage (0);
    66.         return 0;
    67.     }
    68.     return DefWindowProc (hwnd, message, wParam, lParam);
    69. }

Các đề tài tương tự

  1. Bài tập C [GIÚP MÌNH GẤP] tạo ngẫu nhiên n tọa độ (x,y) với x thuộc (0.1,0.2) y thuộc (-200,-50)
    Gửi bởi deathsman trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 29-12-2011, 10:57 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn