bitblt.c

来自「ucos-II+移植到arm+s3c2410的全套代码」· C语言 代码 · 共 97 行

C
97
字号
/*** $Id: bitblt.c,v 1.5 2003/07/10 04:22:37 weiym Exp $**** Listing 26.1**** bitblt.c: Sample program for MiniGUI Programming Manual**     demonstration of BitBlt operation**** Copyright (C) 2003 Feynman Software.**** License: GPL*/#include <minigui/common.h>#include <minigui/minigui.h>#include <minigui/gdi.h>#include <minigui/window.h>static int BitbltWinProc (HWND hWnd, int message, WPARAM wParam, LPARAM lParam){    HDC hdc;    int x, y;    switch (message) {    case MSG_PAINT:        hdc = BeginPaint (hWnd);        SetBrushColor (hdc, PIXEL_blue);#ifdef _USE_NEWGAL        FillCircle (hdc, 10, 10, 8);#else        FillBox (hdc, 2, 2, 16, 16);#endif        for (y = 0; y < 240; y += 20) {            for (x = 0; x < 320; x += 20) {                BitBlt (hdc, 0, 0, 20, 20, hdc, x, y, 0);            }        }        EndPaint (hWnd, hdc);        return 0;    case MSG_CLOSE:        DestroyAllControls (hWnd);        DestroyMainWindow (hWnd);        PostQuitMessage (hWnd);        return 0;    }    return DefaultMainWinProc (hWnd, message, wParam, lParam);}int MiniGUIMain (int args, const char* arg[]){    MSG Msg;    HWND hMainWnd;    MAINWINCREATE CreateInfo;#ifdef _LITE_VERSION    SetDesktopRect(0, 0, 1024, 768);#endif        CreateInfo.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;    CreateInfo.dwExStyle = WS_EX_NONE;    CreateInfo.spCaption = "BitBlt demo";    CreateInfo.hMenu = 0;    CreateInfo.hCursor = GetSystemCursor(0);    CreateInfo.hIcon = 0;    CreateInfo.MainWindowProc = BitbltWinProc;    CreateInfo.lx = 0;    CreateInfo.ty = 0;    CreateInfo.rx = 320;    CreateInfo.by = 240;    CreateInfo.iBkColor = COLOR_lightwhite;    CreateInfo.dwAddData = 0;    CreateInfo.hHosting = HWND_DESKTOP;        hMainWnd = CreateMainWindow (&CreateInfo);        if (hMainWnd == HWND_INVALID)        return -1;    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 + =
减小字号Ctrl + -
显示快捷键?