Народ, кто-нибудь знает как программно нажать на кнопку с клавиатуры? Тоесть я в Visual Studio 2012 пишу программу с формой и на форме есть бутон, который при нажатии на него должен выводить цифру 5.
Подскажите код програмного нажатия на клавиатуру!
Keybd_event не работает, но я точно не знаю! Вдруг просто нужно подключить какую-нибудь dll или библиотеку. Подскажите!
OneShot
29.07.2013, 16:03
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Думаю разберешься
Monkeyman
12.08.2013, 14:53
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Думаю разберешься
Спасибо, конечно, но мне не нужны код клавишь. Мне нужна команда, но keybd_event не работает!
twice
12.08.2013, 15:31
Нужно послать окну сообщение о нажатии клавиши (SendMessage).
Рабочий код приведен ближу к концу тут -> [Ссылки могут видеть только зарегистрированные и активированные пользователи]
Monkeyman
14.08.2013, 12:33
Нужно послать окну сообщение о нажатии клавиши (SendMessage).
Рабочий код приведен ближу к концу тут -> [Ссылки могут видеть только зарегистрированные и активированные пользователи]
Неработает твой SendMessage.
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "hWnd"
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C2065: WM_KEYDOWN: необъявленный идентификатор
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C2065: VK_NUMPAD1: необъявленный идентификатор
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C3861: SendMessage: идентификатор не найден
twice
16.08.2013, 14:52
Неработает твой SendMessage.
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "hWnd"
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(12): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C2065: WM_KEYDOWN: необъявленный идентификатор
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C2065: VK_NUMPAD1: необъявленный идентификатор
1>c:\users\сергей\documents\visual studio 2010\projects\экранная клавиатура\экранная клавиатура\Form1.h(115): error C3861: SendMessage: идентификатор не найден
#include <windows.h>
Monkeyman
17.08.2013, 01:39
#include <windows.h>
Подключал я это!
проблема вот в чём: Есть texBox1 и есть 2 бутнона. 1-ый бутон называеться "M" 2-ой "A". Пишу код для первого бутона textBox1->Text = "M"; Пишу код для второго бутона textBox1->Text = "A";
Нажимаю на бутон "M" и в textBox'e появляется "M", нажимаю на бутон "A" и "A" появляется в textBox'e, но затирает уже нажатую кнопку "M". Я хочу, чтобы при нажатии на бутоны буквы не затирали друг друга
Sinyss
17.08.2013, 03:24
Подключал я это!
проблема вот в чём: Есть texBox1 и есть 2 бутнона. 1-ый бутон называеться "M" 2-ой "A". Пишу код для первого бутона textBox1->Text = "M"; Пишу код для второго бутона textBox1->Text = "A";
Нажимаю на бутон "M" и в textBox'e появляется "M", нажимаю на бутон "A" и "A" появляется в textBox'e, но затирает уже нажатую кнопку "M". Я хочу, чтобы при нажатии на бутоны буквы не затирали друг друга
Серьезно, то есть вместо того что бы прибавить символ, вы решили стереть библиотеку и тем самым вызвать кучу ошибок в коде?
Monkeyman
17.08.2013, 12:03
Серьезно, то есть вместо того что бы прибавить символ, вы решили стереть библиотеку и тем самым вызвать кучу ошибок в коде?
ДА не стирал я никакую библиотеку! Я наоборот windows.h подключишь ещё до того как мне посоветывали!
twice
19.08.2013, 08:46
В общем так, проблема с ошибками решается подключением указанного ранее заголовочника.
Проблема с символами решается заменой твоих строк присваивания на кнопках на:
TextBox1->Text += "A";
TextBox1->Text += "M";