7月19日

来源:互联网 发布:三个数最小公倍数算法 编辑:程序博客网 时间:2024/04/28 20:03

1.编辑框应用

#include <Windows.h>#include <WindowsX.h>#include <WinGDI.h>#include <WinDef.h>#include <commctrl.h>#include "resource.h"LRESULT CALLBACK  myWNDPROC(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);HINSTANCE ins;HWND hs;LONG OnCreate(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);BOOL CALLBACK About(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);BOOL OnInit(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);BOOL OnCommand(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG OnClose(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG OnBTNClick(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG OnEditChange(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);int WINAPI WinMain( HINSTANCE hInstance,    HINSTANCE hPrevInstance,    LPSTR lpCmdLine,    int nShowCmd){ins = hInstance;//全局变量参数传递DialogBox(ins,MAKEINTRESOURCE(IDD_DIALOG1),NULL,About);return 1;}LRESULT CALLBACK myWNDPROC(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){PAINTSTRUCT ps;HDC hdc;//设备环境RECT rect;if(msg == WM_DESTROY){PostQuitMessage(1);}if(msg==WM_PAINT){GetClientRect(hwnd,&rect);hdc=BeginPaint(hwnd,&ps);EndPaint(hwnd,&ps);}if (msg == WM_CREATE){OnCreate(hwnd,msg,wParam,lParam);}return DefWindowProc(hwnd,msg,wParam,lParam);}LONG OnCreate(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){DialogBox(ins,MAKEINTRESOURCE(IDD_DIALOG1),NULL,About);return 0;}BOOL CALLBACK About(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){if(msg == WM_INITDIALOG)//初始化对话框{OnInit(hwnd,msg,wParam,lParam);}if (msg == WM_COMMAND)//命令消息的处理{OnCommand(hwnd,msg,wParam,lParam);}return FALSE;}BOOL OnInit(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){Edit_SetText(GetDlgItem(hwnd,IDE_RED),TEXT("127"));Edit_SetText(GetDlgItem(hwnd,IDE_GREEN),TEXT("127"));Edit_SetText(GetDlgItem(hwnd,IDE_BLUE),TEXT("127"));SendDlgItemMessage(hwnd,IDC_RED,UDM_SETBUDDY,(WPARAM)(GetDlgItem(hwnd,IDE_RED)),0);//微调按钮与编辑框建立绑定关系SendDlgItemMessage(hwnd,IDC_RED,UDM_SETRANGE,0x0L,MAKELONG(255,0));SendDlgItemMessage(hwnd,IDC_RED,UDM_SETPOS,0x0L,MAKELONG(127,0));return TRUE;}BOOL OnCommand(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){switch(LOWORD(wParam)){case IDE_RED:OnEditChange(hwnd,msg,wParam,lParam);break;case IDE_GREEN:OnEditChange(hwnd,msg,wParam,lParam);break;case IDE_BLUE:OnEditChange(hwnd,msg,wParam,lParam);break;case IDCANCEL:OnClose(hwnd,msg,wParam,lParam);break;}return TRUE;}LONG OnClose(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){EndDialog(hwnd,0);return TRUE;}LONG OnEditChange(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){HDC hdc;HWND hfull;RECT rect;int red;int green;int blue;TCHAR  buf[32]=TEXT("im");hfull = GetDlgItem(hwnd,IDC_FULL);GetClientRect(hfull,&rect);hdc = GetDC(hfull);if(HIWORD(wParam) == EN_UPDATE){Edit_GetText(GetDlgItem(hwnd,IDE_RED),buf,8);red = _wtoi(buf);Edit_GetText(GetDlgItem(hwnd,IDE_GREEN),buf,8);green = _wtoi(buf);Edit_GetText(GetDlgItem(hwnd,IDE_BLUE),buf,8);blue = _wtoi(buf);FillRect(hdc,&rect,CreateSolidBrush(RGB(red,green,blue)));}DeleteDC(hfull,hdc);return TRUE;}


在编辑框中显示默认值



改变编辑框中的RGB值,是静态框中的颜色改变


2.进程的基本应用

进程(Process)是指应用程序在内存中的一次运行过程。

进程不完成任何事情。

一个进程至少包含一个线程。

进程和程序的区别:

进程是运行状态,程序是静止状态(磁盘上的二进制代码);

一个进程对应一个程序,一个程序可以对应多个进程。


进程是操作系统分配资源的最小单位

进程的操作方法

CreateProcess()函数创建进程

ExitProcess()退出进程

TerminateProcess()终止进程

Wince中最多能运行65535个进程

#include <Windows.h>#include <WindowsX.h>#include <WinGDI.h>#include <WinDef.h>#include "resource.h"LRESULT CALLBACK  myWNDPROC(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);HINSTANCE ins;LONG OnCreate(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);BOOL CALLBACK About(HWND hwnd1, UINT msg1, WPARAM wParam1, LPARAM lParam1);BOOL OnInit(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);BOOL OnCommand(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG OnClose(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG OnProcClick(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);LONG WebClick(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);int WinMain( HINSTANCE hInstance, //句柄HINSTANCE hPrevInstance, LPSTR lpCmdLine, //应用程序的启动参数int nShowCmd) //显示方式{ins = hInstance;//全局变量参数传递DialogBox(ins,MAKEINTRESOURCE(IDD_DIALOG1),NULL,About);return 1;}LRESULT CALLBACK myWNDPROC(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){PAINTSTRUCT ps;HDC hdc;//设备环境RECT rect;if(msg == WM_DESTROY){PostQuitMessage(1);}if(msg==WM_PAINT){GetClientRect(hwnd,&rect);hdc=BeginPaint(hwnd,&ps);EndPaint(hwnd,&ps);}return DefWindowProc(hwnd,msg,wParam,lParam);}LONG OnCreate(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){DialogBox(ins,MAKEINTRESOURCE(IDD_DIALOG1),NULL,About);return 0;}BOOL CALLBACK About(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){if(msg == WM_INITDIALOG)//初始化对话框{OnInit(hwnd,msg,wParam,lParam);}if (msg == WM_COMMAND)//命令消息的处理{OnCommand(hwnd,msg,wParam,lParam);}return FALSE;}BOOL OnInit(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){return TRUE;}BOOL OnCommand(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){switch(LOWORD(wParam)){    case IDCANCEL:OnClose(hwnd,msg,wParam,lParam);break;    case IDC_PROCESS:OnProcClick(hwnd,msg,wParam,lParam);break;    case IDC_WEB:WebClick(hwnd,msg,wParam,lParam);break;}return TRUE;}LONG OnClose(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){EndDialog(hwnd,0);return TRUE;}LONG OnProcClick(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){PROCESS_INFORMATION pro;if (CreateProcess(TEXT("WinCE触摸屏测试.exe"),NULL,NULL,NULL,FALSE,CREATE_NEW_CONSOLE,NULL,NULL,NULL,&pro)){return -1;}CloseHandle(pro.hThread);CloseHandle(pro.hProcess);}LONG WebClick(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){PROCESS_INFORMATION pro;TCHAR buf[32];Static_GetText(GetDlgItem(hwnd,IDC_WEB),buf,32);if (CreateProcess(TEXT("iexplor.exe"),NULL,NULL,NULL,FALSE,CREATE_NEW_CONSOLE,NULL,NULL,NULL,&pro)){return -1;}CloseHandle(pro.hThread);CloseHandle(pro.hProcess);}

点击“Process”按钮,调用开发板上的程序


点击后,出现程序

原创粉丝点击