C语言花朵代码的

.

C语言——绘画花朵

代码部分

#include

#include

#define PI 3

LRESULT CALLBACK WindowProcedure ( HWND, UINT, WPARAM, LPARAM );

void OnPaint ( HDC );

void DrawLine ( HDC, int, int, int, int );

void DrawFlower ( HDC, int, int, COLORREF );

void DrawTie ( HDC, int, int, COLORREF );

int WINAPI WinMain ( HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil )

{

char szClassName[] = TEXT ( "DrawFlower" );

HWND hwnd;

MSG msg;

WNDCLASSEX wc = { 0 };

wc.hInstance = hThisInstance;

wc.lpszClassName = szClassName;

wc.lpfnWndProc = WindowProcedure;

wc.style = CS_DBLCLKS;

wc.cbSize = sizeof ( WNDCLASSEX );

wc.hIcon = LoadIcon ( NULL, IDI_APPLICATION );

wc.hIconSm = LoadIcon ( NULL, IDI_APPLICATION );

wc.hCursor = LoadCursor ( NULL, IDC_ARROW );

wc.hbrBackground = ( HBRUSH ) ( COLOR_WINDOW+1 );

if ( !RegisterClassEx ( &wc ) ) return 0;

hwnd = CreateWindowEx ( 0, szClassName, szClassName, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, HWND_DESKTOP, NULL, hThisInstance, NULL );

ShowWindow ( hwnd, nFunsterStil );

while ( GetMessage ( &msg, NULL, 0, 0 ) )

{

TranslateMessage ( &msg );

DispatchMessage ( &msg );

}

return msg.wParam;

}

LRESULT CALLBACK WindowProcedure ( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam )

{

PAINTSTRUCT ps;

HDC hdc;

switch ( msg )

{

case WM_PAINT:

hdc = BeginPaint ( hwnd, &ps );

OnPaint ( hdc );

EndPaint ( hwnd, &ps );

break;

case WM_DESTROY:

PostQuitMessage ( 0 );

break;

default:

return DefWindowProc ( hwnd, msg, wParam, lParam );

}

return 0;

}

void OnPaint ( HDC hdc )

{

HPEN h;

// 画蝴蝶结

DrawTie ( hdc, 195, 354, RGB ( 255,0,255 ) );

// 画枝干

h = CreatePen ( PS_SOLID, 1, RGB ( 0,255,0 ) );

SelectObject ( hdc, h );

DrawLine ( hdc, 189, 372, 180, 400 )

更多推荐

花的编程代码C语言,C语言花朵代码的.doc