c,window函数记录

头文件
#include<windows.h>

函数:获取和设置鼠标坐标

POINT mouse;
GetCursorPos(&mouse);//获取坐标
SetCursorPos(mouse.x,mouse.y);//设置坐标
HWND window;    //定义一个窗口句柄变量,用来储存窗口句柄
/*
FindWindow("这里填窗口类名","这里填窗口标题名")
    窗口类名和窗口标题名可以只填一个,不填的用NULL填充
*/
window = FindWindow(NULL,"out.txt - 记事本");  //查找标题为"out.txt - 记事本"的窗口
SendMessage(window,WM_CLOSE,0,0);              //向窗口发送关闭指令
POINT mouse;
 HWND window;
 GetCursorPos(&mouse);
 char ch;
 scanf("%c",&ch);
        window = WindowFromPoint(mouse);
        /*SendMessage(窗口句柄,消息类型,消息附带内容,消息附带内容)
        比如我这里选定的消息类型是WM_CHAR
        消息附带内容为WPARAM(ch)//如:ch==a,则输入a
        所以消息附带内容就是模拟键盘向窗口输入ch*/
        SendMessage(window,WM_CHAR,WPARAM(ch),0);
HWND window;
	window = FindWindow(NULL,"out.txt - 记事本");
	ShowWindow(window,SW_HIDE); //sh_hide               //隐藏窗口
	Sleep(5000);
	ShowWindow(window,SW_MAXIMIZE);  //sw_maximize          //最大化窗口
	Sleep(5000);
	ShowWindow(window,SW_MINIMIZE); //minimize           //最小化窗口
	Sleep(5000);
	ShowWindow(window,SW_RESTORE);     //restore        //还原窗口
	Sleep(5000);
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0) //背下来
KEY_DOWN(VK_SPACE)){//VK_SPACE 是空格的虚拟键值 //按下空格
KEY_DOWN('W')//按下W

模拟鼠标点击左键
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//按下
		Sleep(100);//要留给某些应用的反应时间 		mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);//抬起

右键
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);
		Sleep(100); 
		mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);

//示例代码:

#include<iostream>
#include<windows.h>
 
using namespace std;
 
int main(){
	POINT p; 
	while(1){
		GetCursorPos(&p);//获取鼠标坐标 
		SetCursorPos(p.x+2,p.y);//更改鼠标坐标 
		Sleep(10);//控制移动时间间隔 
	}
	
	return 0;
} 
#include <iostream>
#include<windows.h>

int main() {
    HWND window;    //定义一个窗口句柄变量,用来储存窗口句柄
    /*FindWindow("这里填窗口类名","这里填窗口标题名")
    窗口类名和窗口标题名可以只填一个,不填的用NULL填充*/
    window = FindWindow(NULL,"out.txt - 记事本");  //查找标题为"out.txt - 记事本"的窗口

    SendMessage(window,WM_CLOSE,0,0);              //向窗口发送关闭指令

    return 0;
}
#include <iostream>
#include<windows.h>

int main() {
    POINT mouse;
    HWND window;
    while (1) {
        GetCursorPos(&mouse);
        window = WindowFromPoint(mouse);
        /*SendMessage(窗口句柄,消息类型,消息附带内容,消息附带内容)
        比如我这里选定的消息类型是WM_CHAR
        消息附带内容为WPARAM('c')
        所以消息附带内容就是模拟键盘向窗口输入c*/
        SendMessage(window,WM_CHAR,WPARAM('c'),0);//鼠标位置输入c
        Sleep(100);
    }
    return 0;
}
#include <iostream>
#include<windows.h>

int main() {
    POINT mouse;        //储存鼠标位置
    HWND window;
    
        GetCursorPos(&mouse);   //获取到当前鼠标位置
        /*WindowFromPoint(鼠标位置变量名)*/
        window = WindowFromPoint(mouse);
        SendMessage(window,WM_CLOSE,0,0);//关闭鼠标所在窗口 
        Sleep(100);
    
    return 0;
}
#include<windows.h>
#include<time.h>
int main(){
	HWND window;
	window = FindWindow(NULL,"out.txt - 记事本");//要先打开此记事本
	ShowWindow(window,SW_HIDE); //sh_hide               //隐藏窗口
	Sleep(5000);
	ShowWindow(window,SW_MAXIMIZE);  //sw_maximize          //最大化窗口
	Sleep(5000);
	ShowWindow(window,SW_MINIMIZE); //minimize           //最小化窗口
	Sleep(5000);
	ShowWindow(window,SW_RESTORE);     //restore        //还原窗口
	Sleep(5000);
	return 0;
}

原文参考链接

//网上的,侵删
#include<iostream>
#include<conio.h>
#include<windows.h>
 
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0) //必要的,我是背下来的 
 
using namespace std;
 
int main(){
	char a;
	int now=0;
	printf("按Q开始左键点击\n");
	printf("按W开始右键点击\n");
	printf("按空格停止点击\n");
	while(1){
		if(KEY_DOWN(VK_SPACE)){//VK_SPACE 是空格的虚拟键值 
			now=0;
			Sleep(100);//你的手不会再一瞬间送开,所以要处理一下 
		}
		if(KEY_DOWN('Q')){
			now=1;
			Sleep(100);
		}
		if(KEY_DOWN('W')){
			now=2;
			Sleep(100);
		}
		if(now==1){//模拟点击左键 
			mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
			Sleep(100);//要留给某些应用的反应时间 
			mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
		}
		if(now==2){//模拟点击右键 
			mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);
			Sleep(100); 
			mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);
		}
		
		Sleep(200);//点击间隔 单位是毫秒 
	}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 我可以为您提供如下C语言数据滑动滤波函数的实现:double filtered_data( double *data, int n, int window_size ) { // 计算滑动窗口的移动步长 int step = window_size / 2; double filtered_value = 0; int start = 0; int end = window_size; // 开始循环滑动窗口 while(end <= n) { // 取窗口中的最大值 double max_value = data[start]; for(int i = start; i < end; i++) { if(data[i] > max_value) { max_value = data[i]; } } // 记录最大值 filtered_value += max_value; // 移动滑动窗口 start += step; end += step; } // 计算平均值 filtered_value /= (n / window_size); return filtered_value; } ### 回答2: 滑动滤波是一种基本的数字滤波方法,用于去除信号中的噪声。在C语言中,可以编写一个简单的数据滑动滤波函数。下面是一个示例代码: ```c #include <stdio.h> #define WINDOW_SIZE 5 float slidingFilter(float data[], int size) { // 声明用于存储滑动窗口数据的数组 float window[WINDOW_SIZE]; // 初始化滑动窗口 for (int i = 0; i < WINDOW_SIZE; i++) { window[i] = data[i]; } // 进行滑动滤波 for (int i = WINDOW_SIZE; i < size; i++) { // 将新的数据放入滑动窗口 window[i % WINDOW_SIZE] = data[i]; // 计算滑动窗口内的数据平均值 float sum = 0; for (int j = 0; j < WINDOW_SIZE; j++) { sum += window[j]; } float average = sum / WINDOW_SIZE; // 将平均值作为滤波后的结果保存到原始数据数组中 data[i] = average; } return data[size - 1]; } int main() { // 示例数据 float data[] = {1.2, 2.5, 1.7, 3.1, 2.9, 1.5, 2.8, 1.1, 3.0}; int size = sizeof(data) / sizeof(float); // 调用数据滑动滤波函数 float result = slidingFilter(data, size); // 打印滤波后的数据 printf("滤波后的数据为:"); for (int i = 0; i < size; i++) { printf("%.2f ", data[i]); } printf("\n"); // 打印滤波后的最后一个数据 printf("滤波后的最后一个数据为:%.2f\n", result); return 0; } ``` 上述代码中,我们首先定义了滑动窗口的大小为5,然后使用一个数组来存储滑动窗口内的数据。函数`slidingFilter`接收一个浮点型数组`data`以及其大小`size`作为参数,并返回滤波后的最后一个数据。 在`main`函数中,我们给出了一个示例数据,并调用`slidingFilter`函数进行滑动滤波。最后,打印滤波后的数据和最后一个数据。输出结果如下: ``` 滤波后的数据为:1.20 2.50 1.70 2.30 2.38 1.78 1.92 1.70 2.14 滤波后的最后一个数据为:2.14 ``` 通过上述代码,我们实现了一个简单的滑动滤波函数,可以应用于各种数据滤波需求中。 ### 回答3: C语言数据滑动滤波函数的实现可以通过定义一个固定大小的缓冲区来存储数据,然后通过计算缓冲区内数据的平均值或中位数来实现滤波功能。以下是一个简单的示例代码: ```c #define BUFFER_SIZE 10 // 数据滑动滤波函数 double dataFilter(double value) { static double buffer[BUFFER_SIZE]; // 静态数组用于存储数据 static int index = 0; // 缓冲区的索引 // 将新数据加入缓冲区 buffer[index] = value; index = (index + 1) % BUFFER_SIZE; // 计算缓冲区内数据的平均值 double sum = 0.0; for (int i = 0; i < BUFFER_SIZE; i++) { sum += buffer[i]; } double average = sum / BUFFER_SIZE; return average; } int main() { // 假设有一组待滤波的数据 double testData[] = {1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9, 10.0}; // 逐个处理数据并输出滤波结果 for (int i = 0; i < sizeof(testData) / sizeof(testData[0]); i++) { double filteredData = dataFilter(testData[i]); printf("滤波结果: %.2f\n", filteredData); } return 0; } ``` 以上代码实现了一个简单的数据滑动滤波函数。在滤波函数中,使用一个静态数组作为缓冲区,将新的数据存入缓冲区,并计算缓冲区内数据的平均值作为滤波结果。在主函数中,我们可以定义一组待滤波的数据,并通过调用滤波函数来获取滤波结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值