Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Заставить индикаторы клавиатуры мигать - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ itoa(); http://www.cyberforum.ru/cpp-beginners/thread293742.html
вопрос!!! вводится массив элементов типа unsigned char двоичным числом, т.е только 0 и 1... как перевести мое вводимое число в десятичную систему???
C++ Динамический массив Привет всем!Помогите разобратса в задаче по теме МНОГОМЕРНЫЕ ДИНАМИЧЕСКИЕ МАССИВЫ. 1.Напишите функцию для обращения двумерного динамического массива в одномерный. http://www.cyberforum.ru/cpp-beginners/thread293741.html
C++ По теме Строки.
Привет всем! Помогите пожалуйста с задачкой.Никак немогу понять что идет к чему. 1.Написать функцию для замены первых букв во всех словах на прописные буквы.
Индийская легенда C++
НАРОД ПОМОГИТЕ ПЛЗ! ПОДСКАЖИТЕ КАК ВЫВЕСТИ ОЧ БОЛЬШОЕ ЧИСЛО В ЭТОЙ ЗАДАЧЕ НАПРИМЕР ЕСЛИ ВЗЯТЬ 10 ячейку? "О шахматной доске и зернах". Известная индийская легенда утверждает, что когда великий...
C++ Битовые операции http://www.cyberforum.ru/cpp-beginners/thread293724.html
Есть число в двоичной системе, например "01000001", рядом с единицами надо заменить нули на единички! то есть должно получится например "11100011"! Помогите нашкодить!
C++ Непонятная операция в листинге Почему if(s=='.') использует s= на s и что значит ++s мы сдвигаем указатель или что растолкуйте #include <iostream.h> #include <conio.h> #include <stdio.h> int CountLetters(char* s) {... подробнее

Показать сообщение отдельно
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517

Заставить индикаторы клавиатуры мигать - C++

12.05.2011, 10:48. Просмотров 2290. Ответов 3
Метки (Все метки)

Нужно заставить чтобы индикаторы клавиатуры мигали каждые 10 секунд (это уже я если что сам доделаю), узнал что через winapi это можно сделать и на с++, но знаний языка пока к сожалению недостаточно чтобы это реализовать.
На сайте майкрософт написано как это сделать и есть один рабочий пример
http://msdn.microsoft.com/en-us/library/ms646304(v=vs.85).aspx
, кто разбирается помогите пожалуйста, очень прошу.

Добавлено через 1 минуту
Сам доделаю в смысле что черезе 10 секунд именно

Добавлено через 18 минут
Смог заставить по тому примеру включаться и остальные клавиши, но выключать плохо получается, почему так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 #include <windows.h>
 #include <iostream>
 
   void SetNumLock( BOOL bState )
   {
      BYTE keyState[256];
 
      GetKeyboardState((LPBYTE)&keyState);
      if( (bState && !(keyState[VK_NUMLOCK] & 1)) ||
          (!bState && (keyState[VK_NUMLOCK] & 1)) )
      {
      // Simulate a key press
         keybd_event( VK_NUMLOCK,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | 0,
                      0 );
 
      // Simulate a key release
         keybd_event( VK_NUMLOCK,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
                      0);
      }
   }
   void SetCapsLock( BOOL bState )
   {
      BYTE keyState[256];
 
      GetKeyboardState((LPBYTE)&keyState);
      if( (bState && !(keyState[VK_CAPITAL] & 1)) ||
          (!bState && (keyState[VK_CAPITAL] & 1)) )
      {
      // Simulate a key press
         keybd_event( VK_CAPITAL,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | 0,
                      0 );
 
      // Simulate a key release
         keybd_event( VK_CAPITAL,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
                      0);
      }
   }
 
   void SetScrLock( BOOL bState )
   {
      BYTE keyState[256];
 
      GetKeyboardState((LPBYTE)&keyState);
      if( (bState && !(keyState[VK_SCROLL] & 1)) ||
          (!bState && (keyState[VK_SCROLL] & 1)) )
      {
      // Simulate a key press
         keybd_event( VK_SCROLL,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | 0,
                      0 );
 
      // Simulate a key release
         keybd_event( VK_SCROLL,
                      0x45,
                      KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
                      0);
      }
   }
 
   int main()
   {
      SetNumLock( TRUE );
      SetCapsLock(TRUE);
      SetScrLock (TRUE);
      int a;
      std::cin>>a;
      SetNumLock( FALSE );
      SetCapsLock(FALSE);
      SetScrLock (FALSE);
   }
Если в коде оставить в конце SetScrLock (FALSE) то выключится только scrolLock, а если убрать то выключиться капс и нам лок. Что я сделал смотря на пример не правильно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru