当前位置:首页 » 编程语言 » c语言编写一个点击按键
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言编写一个点击按键

发布时间: 2022-12-28 10:10:05

A. 如何用c语言写一个button按钮

#include <windows.h>
typedef _Bool bool;
#define false ((bool)0)
#define true ((bool)1)
HWND ChuangJianChuangKou(char *a,bool(*b)(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam),bool c,int x,int y)
{
HWND hwnd;
static TCHAR szAppName[] = TEXT("Mz Game") ;
WNDCLASS wndclass ;
wndclass.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS | CS_OWNDC ;
wndclass.lpszClassName = szAppName ;
wndclass.lpszMenuName = NULL ;
wndclass.hbrBackground =(HBRUSH)GetStockObject(6);
wndclass.lpfnWndProc = (WNDPROC)b;
wndclass.cbWndExtra = 0 ;
wndclass.cbClsExtra = 0 ;
wndclass.hInstance = 0;
wndclass.hIcon = LoadIcon( NULL, IDI_APPLICATION ) ;
wndclass.hCursor = LoadCursor( NULL, IDC_ARROW ) ;
if(!RegisterClass(&wndclass))
{
return (HWND)0;
}
hwnd=CreateWindow(
szAppName,
a,
c?WS_OVERLAPPEDWINDOW:WS_POPUP,
(GetSystemMetrics (SM_CXSCREEN)-x)/2,
(GetSystemMetrics (SM_CYSCREEN)-y)/2,
x,
y,
0,
0,
0,
0
);
ShowWindow(hwnd,1);
UpdateWindow(hwnd);
return hwnd;
}
bool GengXinChuangKou()
{
static MSG msg;
if(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
return true;
}
else
{
return false;
}
}
bool WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
return MoRenChuLi(hwnd,message,wParam,lParam,0);

}
WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
{
ChuangJianChuangKou("sss",WndProc,true,KongJianDaXiao(0).x/2,KongJianDaXiao(0).y/2);
while(GengXinChuangKou());
}

B. 如何用C语言实现按键功能

主要就是按键检测,防抖呗。
首先给出检测按键代码:(我这个事4*4键盘。具体你要根据实际情况编写)
uchar TestKey()
{
uchar cord_h,cord_l;
P6=0x0f;
cord_h=P6&0x0f;
if(cord_h!=0x0f)
{
Delay_Xms(1);
if(cord_h!=0x0f)
{
cord_h=P6&0x0f;
P6=cord_h|0xf0;
cord_l=P6&0xf0;
return(cord_h+cord_l);
}
}return(0xff);
}

--------------------------------------
然后你在Main函数里编写循环,检测按键然后做你想做的事情。。。
while(1)
{
key=TestKey();//调用键盘扫描,
switch(key)
{
case 0x7e:P4=0xa1;break;//0 按下相应的键显示相对应的码值
case 0x7d:Show1Menu();break;//1
case 0x7b:P4=0x83;break;//2
case 0x77:P4=0x88;break;//3
case 0xbe:P4=0x99;break;//4
case 0xbd:P4=0x90;break;//5
case 0xbb:P4=0x82;break;//6
case 0xb7:P4=0xb0;break;//7
case 0xde:P4=0xc0;break;//8
case 0xdd:P4=0x80;break;//9
case 0xdb:P4=0x92;break;//a
case 0xd7:P4=0xa4;break;//b
case 0xee:P4=0xc6;break;//c
case 0xed:P4=0xf8;break;//d
case 0xeb:P4=0x99;break;//e
case 0xe7:P4=0xf9;break;//f
}
}

C. c语言键盘按键触发怎么表示

可以用FlexibleButton表示。

FlexibleButton 是一个基于标准 C 语言的小巧灵活的按键处理库,支持单击、连击、短按、长按、自动消抖,可以自由设置组合按键,可用于中断和低功耗场景。

该按键库解耦了具体的按键硬件结构,理论上支持轻触按键与自锁按键,并可以无限扩展按键数量。另外,FlexibleButton 使用扫描的方式一次性读取所有所有的按键状态,然后通过事件回调机制上报按键事件。

核心的按键扫描代码仅有三行,没错,就是经典的 三行按键扫描算法。使用 C 语言标准库 API 编写,也使得该按键库可以无缝兼容任意的处理器平台,并且支持任意 OS 和 non-OS(裸机编程)。

快速体验:

FlexibleButton 库中提供了一个测试例程 ./examples/demo_rtt_iotboard.c,该例程基于 RT-Thread OS 进行测试,硬件平台选择了 RT-Thread IoT Board Pandora v2.51 开发板。

当然你可以选择使用其他的 OS,或者使用裸机测试,只需要移除 OS 相关的特性即可。

如果你使用自己的硬件平台,只需要将 FlexibleButton 库源码和例程加入你既有的工程下即可。

DEMO 程序说明:

该示例程序可以直接在 RT-Thread stm32l475-atk-pandora BSP 中运行,可以在该 BSP 目录下,使用 menuconfig 获取本软件包。

D. 用C语言写一个控制鼠标键盘自动点的程序复杂吗

很简单啊~

#include<stdio.h>
#include<stdlib.h>
#include<windows.h>//重要!
intmain()
{
SetCursorPos(0,0);//设置鼠标坐标
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//点击左键
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);//点击右键
return0;
}
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>//重要!
intmain()
{
//字母
keybd_event('A',0,0,0);//按下
keybd_event('A',0,2,0);//松开
//回车
keybd_event(0x0d,0,0,0);
keybd_event(0x0d,0,2,0);
}

E. 如何利用c语言添加button按钮

Windows 窗体程序是基于消息机制的,所有控件,它的本质都是一个窗体,都是使用 CreateWindows 函数来创建,不过类名,则需要指定为系统预先注册的控件类,比如,你要创建一个按钮控件,就要这样子 CreateWindows( "BUTTON", "按钮标题" ),CreateWindows 这个函数你应该用了不少了吧,其余的参数可以参考 MSDN,但是类名我们指定了 “BUTTON”,说明我们要创建一个按钮,每个按钮都有一个唯一的 ID,通过你的消息处理函数,可以知道哪个按钮发生了什么事件,详细讲的话,非常多,你可以参考 MSDN,或者《Windows 程序设计》这本书 。

F. c语言如何创建一个按钮做计算器用

这是一个简单计算器程序:
1)创建一个对话框的应用
2)向对话框中添加一个编辑框控件和十六个按钮
3)在头文件声明:
double m_Num; //记录编辑框中的数据
BOOL m_Time; //判断是否为第一次按下数字键
char m_Operator; //保存运算符
4)处理数字“1”按钮的单击事件将按钮代表的数字写入编辑框中,代码:
void CCalculatorDlg::OnButton1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_Time == TRUE)
{
m_Result = 0;
}
m_Result = m_Result * 10 + 1;
m_Time = FALSE;
UpdateData(FALSE);
}
5)按照步骤4设置其他的数字按钮的单击事件
6)添加Count函数,用于计算数据,代码如下:
void CCalculatorDlg::Count()
{
UpdateData(TRUE);
switch(m_Operator)
{
case '+':
m_Num += m_Result;
break;
case '-':
m_Num -= m_Result;
break;
case '*':
m_Num *= m_Result;
break;
case '/':
if(m_Result == 0)
{
MessageBox("除数不能为0");
return;
}
m_Num /= m_Result;
break;
default:
m_Num = m_Result;
break;
}
m_Result = m_Num;
m_Time = TRUE;
UpdateData(FALSE);
}
7)处理“+”,为m_Operator变量赋值。代码:
void CCalculatorDlg::OnButton13()
{
// TODO: Add your control notification handler code here
if(m_Time == FALSE)
{
Count();
}
m_Operator = '+';
}
8)按照步骤7设置其他符号按钮的单击事件
9)处理“C”按钮的单击事件,用于清空编辑框中的数据,代码
void CCalculatorDlg::OnButton11()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
m_Result = 0;
m_Num = 0;
m_Time = TRUE;
m_Operator = ' ';
UpdateData(FALSE);
}
以上运行结果正常,不过结果贴不上来啊,就靠自己了啊

G. 怎样用C语言做一个按钮并设置点击反应

void delay() //延迟子程序
{
unsigned char i,j;
i=5;
while(i--)
for(j=0;j<200;j++);
}

uint key() //按键子程序
{
f(k1==0)// 当按键按下时
{
delay( );// 延迟等待
if(k1==0) // 如果按键还是按下的动作,确定按键已经按下
while(!k1) ; // 当按键有弹起以后,再执行动作
{ /*这里自己/设置按键按下以后要执行的动作*/}

}
}

希望对您有所帮助!

H. c语言编程,从键盘任意按下一个键程序能识别并输出按键种类

#include<stdio.h>
#include<conio.h>
void main() { char c;
while ( 1 ) {
c=getch();
if ( c==27 ) { printf("Esc键退出。\n"); break; }
else if ( c>='a' && c<='z' ) printf("小写字母\n");
else if ( c>='A' && c<='Z' ) printf("大写字母\n");
else if ( c>='0' && c<='9' ) printf("数字\n");
else printf("其他字符\n");
}
}

I. 单片机 用C语言怎么编写用一个按钮,控制一盏灯的亮与灭的程序

读取连接按键的IO口,判断是否为低电平,如果是,延时(十毫秒左右可以),再次读取IO口,判断是否为低电平,如果是则表示有有效的按键按下,接着用while判断等待按键释放,然后让连接led的IO口电平取反以控制其亮灭(是强电的灯可以通过此处控制继电器的合、闭来控制灯的亮灭)。参考程序:if(key==0){delayms(10);if(key==10){while(key==0);//等待按键释放,IO口恢复高电平led=!led;//按键控制程序}}