⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 picturn.c

📁 Minigui应用程序
💻 C
字号:
/***************************************************************************** 文件名:dispbmp.c* 功能:MiniGUI应用例子。*       使用LoadBitmapFromFile函数装载一个BMP文件,然后使用*       FillBoxWithBitmap函数在主窗口上显示该图片。****************************************************************************//* 包含MiniGUI头文件 */#include <minigui/common.h>#include <minigui/minigui.h>#include <minigui/gdi.h>#include <minigui/window.h>#include <minigui/control.h>/* 主窗口起始位置及大小 */#define  MWINDOW_LX	0      /* 窗口左边框的x值 */#define  MWINDOW_TY	0      /* 窗口上边框的y值 */#define  MWINDOW_RX	800     /* 窗口右边框的x值 */#define  MWINDOW_BY	600     /* 窗口下边框的y值 */HWND hMainWnd;      // 主窗口句柄/***************************************************************************** 名称:WinProc()* 功能:主窗口过程函数。*       处理MSG_PAINT消息,在窗口中显示BMP图片。* 入口参数:hWnd        窗口句柄*           message     消息*           wParam      消息附加参数1(对于不同的消息,有不同的用途)*           lParam      消息附加参数2(对于不同的消息,有不同的用途)* 出口参数:消息已处理则返回0。****************************************************************************/static int  WinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam){   static BITMAP  s_bmp;	static int chang=0;    HDC  hdc;   // 定义一个图形设备上下文对象,输出字符时需要。        switch(message)    {   case MSG_CREATE:			if(LoadBitmapFromFile( HDC_SCREEN,   	// 设备上下文                                  &s_bmp,       	// BITMAP变量地址                                  "pic0.bmp") )     // 文件名			{ 			printf("loading picture erro!!!\n");			return(-1);}		break;        case MSG_PAINT:	        hdc = BeginPaint(hWnd);         // 获得设备hdc	     	        printf("painting picture start!!!\n");   	        FillBoxWithBitmap (hdc, 0, 0, 320, 240, &s_bmp);  // 显示图片   	        printf("painting picture end!!!\n");       	        EndPaint(hWnd, hdc);            // 释放设备hdc	    break;		case MSG_CHAR:	    	// 字符消息			UnloadBitmap (&s_bmp);			chang++;			if(chang>1)			{chang=0;}			if(chang==0)			{LoadBitmapFromFile( HDC_SCREEN, &s_bmp, "pic0.bmp");}			if(chang==1)			{LoadBitmapFromFile( HDC_SCREEN, &s_bmp, "pic1.bmp");}			UpdateWindow(hWnd, TRUE);	    break;        case MSG_CLOSE:            UnloadBitmap (&s_bmp);	        DestroyMainWindow(hWnd);        // 销毁主窗口	        PostQuitMessage(hWnd);          // 发送MSG_QUIT消息,通知"消息循环"结束	        break;       default:	        return(DefaultMainWinProc(hWnd, message, wParam, lParam));    }    return(0);}/***************************************************************************** 名称:InitMainWindow()* 功能:建立主窗口。* 入口参数:无* 出口参数:建立成功返回1,否则返回0。****************************************************************************/int InitMainWindow(void){   MAINWINCREATE  window_info;    window_info.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;      window_info.dwExStyle = WS_EX_NONE;             window_info.spCaption = "MiniGUI";              window_info.hMenu = 0;                          window_info.hCursor = GetSystemCursor(0);       window_info.hIcon = 0;                          window_info.MainWindowProc = WinProc;           window_info.lx = MWINDOW_LX;                    window_info.ty = MWINDOW_TY;    window_info.rx = MWINDOW_RX;    window_info.by = MWINDOW_BY;    window_info.iBkColor = COLOR_lightwhite;        window_info.dwAddData = 0;    window_info.hHosting = HWND_DESKTOP;                hMainWnd = CreateMainWindow(&window_info);    if(hMainWnd == HWND_INVALID) return(0);       else return(1);}/***************************************************************************** 名称:MiniGUIMain()* 功能:MiniGUI程序入口点。* 入口参数:argc    参数个数*           argv    参数字符串指针* 出口参数:返回0。****************************************************************************/int  MiniGUIMain(int argc, const char *argv[]){   MSG Msg;#ifdef _LITE_VERSION    SetDesktopRect(0,0, 800,600);#endif    InitMainWindow();       // 建立主窗口    ShowWindow(hMainWnd, SW_SHOWNORMAL);    // 显示主窗口        /* 消息循环 */    while(GetMessage(&Msg, hMainWnd))     {   TranslateMessage(&Msg);        DispatchMessage(&Msg);    }        MainWindowThreadCleanup(hMainWnd);    return(0);}/* 定义桌面接口函数 */#ifndef _LITE_VERSION		#include <minigui/dti.c>#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -