请问用VC或C#写软键盘 如何响应输入的内容?

2024-12-29 16:36:38
推荐回答(5个)
回答1:

最主要是令你软盘程序无有焦点就可以了, 创建的软盘程序窗口应该有
WS_EX_NOACTIVATE 风格,当拥有这个风格的窗口不会获得输入焦点,即使你按窗口上的按钮,此时的输入焦点还是会在之前的窗口上。

示例程序下载(请不要直接使用迅雷下载)
http://cid-3ba16e78a53d2d3d.office.live.com/self.aspx/VC%5EM%5EM/SoftKeyboard.zip

部分主要代码:
在对话框的OnInitDialog()里添加以下代码即可。
BOOL CDemoDlg::OnInitDialog()
{
//设置窗口无焦点
#define WS_EX_NOACTIVATE 0x08000000L //无焦点
::SetWindowLong(m_hWnd,GWL_EXSTYLE, GetWindowLong(m_hWnd,GWL_EXSTYLE)&~WS_EX_APPWINDOW|WS_EX_NOACTIVATE);
::SetWindowPos(m_hWnd,HWND_TOPMOST,0,0,245,800,SWP_FRAMECHANGED|SWP_NOMOVE|SWP_NOSIZE);

CDialog::OnInitDialog();
SetIcon(m_hIcon, TRUE); // Set big icon

return TRUE;

回答2:

我是这样觉得哈。其实键盘的每个按键你都可以做成一个按钮的形式的,这样的话,你在编写程序的时候呢,就可以在每个按钮里面添加对应的事件即可的。
或者你可以使用一个死循环来捕捉你的按钮事件的,然后在这个死循环里面来进行一个switch来进行判断是哪个按钮按下的,然后在case语句里面来编写相应的函数即可的额,或者你可以把函数放在外面,然后在这个CASE 语句里面就直接调用函数也是可以额的。。

回答3:

如果你的意思是如何获取用户输入的内容的话,就用“scanf();”
例如:
float a;
printf("please enter a number:\n");
scanf("%f",&a);

回答4:

按钮的点击事件

回答5:

哈哈我有一个用jquery写的你要吗?