 |
|

25.12.2016, 16:36
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Можно через событие WM_KEYUP в сообщениях окна.
|
|
|

25.12.2016, 20:57
|
|
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами:
6438231
Репутация:
133
|
|
Сообщение от p1cador
Как проверить кнопку на однократное нажатие?
Желательно без огромных хуков клавиатуры.
Для работы с кнопками можно использовать метод GetAsyncKeyState(Байт_код), но с ней иногда бывают проблеммы(залипание, фантомное срабатывание иногда просто не действует), поэтому опишем свою функцию.
Прототип:
C++:
Код:
BOOL
State_Key
(
int
Key
,
DWORD dwTimeOut
)
;
Key - байт код клавиши
dwTimeOut - время до возможности повторного действия в Мсек(не совсем точное определение)
Определяем структуру.
C++:
Код:
static
struct
_Keys
{
bool
bPressed
;
DWORD dwStartTime
;
}
kPressingKeys
[
256
]
;
функа :
C++:
Код:
BOOL
State_Key
(
int
Key
,
DWORD dwTimeOut
)
{
if
(
HIWORD
(
GetKeyState
(
Key
)
)
)
{
if
(
!
kPressingKeys
[
Key
]
.
bPressed
||
(
kPressingKeys
[
Key
]
.
dwStartTime
&&
(
kPressingKeys
[
Key
]
.
dwStartTime
+
dwTimeOut
)
NULL
)
kPressingKeys
[
Key
]
.
dwStartTime
=
GetTickCount
(
)
;
return
TRUE
;
}
}
else
kPressingKeys
[
Key
]
.
bPressed
=
FALSE
;
return
FALSE
;
}
Ставишь в функе время, секунд 15 , думаю хватит.
Автор "крайслер"
Взято с zhyk.ru.
p.s. делал как то без времени , когда запаривался по поводу этого вопроса , но так как все свои сурсы проебал , не помню уже.
|
|
|

27.12.2016, 13:58
|
|
Познающий
Регистрация: 26.12.2016
Сообщений: 61
С нами:
4936063
Репутация:
58
|
|
Кто нибудь компилил C++ для SAMPFUNCS на Ubuntu? У меня с инклудами проблема, нашел выход только поставить виртуалку и скачать VC 2012
|
|
|

27.12.2016, 15:17
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от Jadson
Кто нибудь компилил C++ для SAMPFUNCS на Ubuntu? У меня с инклудами проблема, нашел выход только поставить виртуалку и скачать VC 2012
mingw, winegcc, но нет нормального ассемблера
|
|
|

27.12.2016, 21:29
|
|
Познающий
Регистрация: 26.12.2016
Сообщений: 61
С нами:
4936063
Репутация:
58
|
|
Сообщение от SR_team
mingw, winegcc, но нет нормального ассемблера
Понял, а через CLion кто-то пробовал компилировать? Мне как то продукты JetBrains по душе, использую их давно, VS в новинку и не совсем привычно.
|
|
|

27.12.2016, 22:12
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от Jadson
Понял, а через CLion кто-то пробовал компилировать? Мне как то продукты JetBrains по душе, использую их давно, VS в новинку и не совсем привычно.
Тебе IDE нужна или компилятор?
|
|
|

27.12.2016, 23:07
|
|
Познающий
Регистрация: 26.12.2016
Сообщений: 61
С нами:
4936063
Репутация:
58
|
|
Сообщение от SR_team
Тебе IDE нужна или компилятор?
Ну IDE с компилятором хотелось бы, посмотрел что в СLion можно компилятор настроить, но пока буду в VS все делать, мне его достаточно
|
|
|

28.12.2016, 00:20
|
|
Участник форума
Регистрация: 19.03.2014
Сообщений: 222
С нами:
6395080
Репутация:
128
|
|
Как ввести опред. текст в текстбокс и нажать кнопку ок из стороннего консольного приложения?
Сделал
C++:
Код:
HWND window
=
FindWindowEx
(
NULL
,
NULL
,
NULL
,
"Channel Password"
)
;
Получаю HWND, что делать с ним дальше - хз.
Пробовал чисто протестировтаь
C++:
Код:
SendMessage
(
window
,
WM_QUIT
,
0
,
0
)
;
PostMessage
(
window
,
WM_QUIT
,
0
,
0
)
;
Ноль реакции
Ссылки на гайды приветствуются
|
|
|

01.01.2017, 00:35
|
|
Постоянный
Регистрация: 14.06.2015
Сообщений: 402
С нами:
5744580
Репутация:
28
|
|
Код:
Код:
wcex.hInstance = hInstance;
wcex.hIcon = (HICON) ::LoadImage(hInstance, L"icon1.ico", IMAGE_ICON, 32, 32, LR_SHARED);
Пытаюсь установить иконку для приложения. Handle получается равен нулю. Что не так то?
|
|
|

04.01.2017, 20:17
|
|
Познающий
Регистрация: 26.12.2016
Сообщений: 61
С нами:
4936063
Репутация:
58
|
|
Вопрос назрел, если я сделаю свой чат в игре который бы сохранял сообщения в бд, и выводил их с бд в игру другим игрокам у кого стоит тот же скрипт то админы сервера как то могут это заметить?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|