none
описание myCodeMatrix[] RRS feed

  • Вопрос

  • Добрый день! У кого нибудь есть информация о myCodeMatrix[]? Я нигде не могу найти внятного описания. Заранее спасибо за помощь!
    • Перемещено Siddharth Chavan 1 октября 2010 г. 22:38 MSDN Forums Consolidation (От:Visual C#)
    24 декабря 2009 г. 8:32

Ответы

  • ^)
    Вам показали пример, что myCodeMatrix[N] - это  произвольный массив целых чисел, в который занесены коды клавиш(вы можете назвать его по другому), randNumber - это случайное число, которое изменяется в диапазоне от 0 до "длина массива - 1",  т.е. вы генерируете случайный индекс массива и по случайному индексу получаете код клавиши myCodeMatrix[randNumber], который тоже будет случайным.
    int
     rand100 = (((double
    ) rand() / (double
    ) RAND_MAX) * RANGE_MAX  + RANGE_MIN);
    //в массив keysArray занесены коды клавиш
    int code = keysArray[rand100];
    • Предложено в качестве ответа PashaPash 24 декабря 2009 г. 14:06
    • Помечено в качестве ответа I.Vorontsov 24 декабря 2009 г. 14:09
    24 декабря 2009 г. 13:32

Все ответы

  • Гугл тоже не может. Что это за загадочная вещь, хоть в общих чертах.

    24 декабря 2009 г. 9:07
  • Это я делаю эмулятор пользовательского интерфейса - в первом приближении это эмулятор клавиатуры.
    Нужно из некоторого файла в программу пересылать коды нажатий кнопок клавиатуры и записывать отосланные же коды в другой файл.
    В программе я буду использовать структуру:
    typedef struct cods 
    {
        int b1[100];//порядковый номер команды
        int l[100];//число байт в команде
        unsigned short int b2[100];//код команды
        char name_command[24]} //имя команды
        cods cods_press;

    У меня возник вопрос: как передавать программе код нажатия клавишь? В первом файле содержатся коды нажатия клавишь, я их должна переслать основной программе. Например, нажатие кнопки Enter:
    	
    SendMessage(hWnd, WM_KEYDOWN, VK_RETURN, NULL)
    Но проблема в том, что мне нужно отсылать не по одному коду, а организовать генератор псевдослучайного перебора кодов, записанных в первом файле. Относительно перебора нашла функцию srand. Например, в первом файле у меня 100 кодов нажатий клавишь.
    srand( (unsigned)time( NULL ) );
         {
         int RANGE_MIN = 0;
         int RANGE_MAX = 100;
         for (i = 0;    i < 10; i++ )
          {
             int rand100 = (((double) rand() / (double) RAND_MAX) * RANGE_MAX 
                           + RANGE_MIN);
             printf( "  %6d\n", rand100);
          }
         }
    Структура cods описана в одном файле. Функция srand() перебирает, по сути номер команд и выдает, к примеру, числа: 23, 45, 76, 56, 89, 34, 46, 33, 89, 65.
    Т.о., мне нужно организовать, чтобы функция srand() выдавала не номер, а код команды, например: F1, D3, 7A, 5C, 4F, A0, 5F, 2D, B3, 6F.

    Мне посоветовали следующее: "VK_RETURN это всего лишь число (define там стоит). Посмотрите как объявлено оно и другие "коды" и генерируйте в нужном диапазоне... или например, загоните коды в массив (пусть его ранг будет 10), тогда вы генерируете 5-ть псевдослучайных чисел из диапазона [0;9] и получаете "код" простым myCodeMatrix[randNumber]." Теперь я вот собственно и ищу информацию по myCodeMatrix[randNumber].
    Есть ли идеи?
    24 декабря 2009 г. 9:31
  • ^)
    Вам показали пример, что myCodeMatrix[N] - это  произвольный массив целых чисел, в который занесены коды клавиш(вы можете назвать его по другому), randNumber - это случайное число, которое изменяется в диапазоне от 0 до "длина массива - 1",  т.е. вы генерируете случайный индекс массива и по случайному индексу получаете код клавиши myCodeMatrix[randNumber], который тоже будет случайным.
    int
     rand100 = (((double
    ) rand() / (double
    ) RAND_MAX) * RANGE_MAX  + RANGE_MIN);
    //в массив keysArray занесены коды клавиш
    int code = keysArray[rand100];
    • Предложено в качестве ответа PashaPash 24 декабря 2009 г. 14:06
    • Помечено в качестве ответа I.Vorontsov 24 декабря 2009 г. 14:09
    24 декабря 2009 г. 13:32
  • OlegGel , большое Вам спасибо!
    24 декабря 2009 г. 13:51