- 浏览: 1451495 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (564)
- 算法 (7)
- 流金岁月 (1)
- Javascript (30)
- actionscript (108)
- as3.0 game (14)
- flex (84)
- fms2 (27)
- 正则表达式 (7)
- 开源组件代码(as3.0) (1)
- Pv3d (13)
- Cairngorm (4)
- vbs (54)
- VB程序设计 (26)
- 计算机应用与维护 (4)
- 职场实用穿衣技巧 (3)
- 历史风云 (15)
- 淡泊明志,宁静致远 (12)
- 情感 (26)
- 杂谈 (41)
- 越南风 (14)
- DirectX (9)
- Dev-cpp (11)
- 回望百年 (2)
- 建站经验 (2)
- Python (24)
- 网络赚钱 (4)
- php (2)
- html (1)
- ob0短址网 (1)
- ob0.cn (1)
- wordpress (1)
- pandas logistic (1)
- haxe (1)
- opencv (1)
- 微信小程序 (3)
- vue (3)
- Flutter (1)
最新评论
-
GGGGeek:
第一个函数滚动监听不起作用,onPageScroll可以
微信小程序--搜索框滚动到顶部时悬浮 -
naomibyron:
解决办法:工具 -> 编译选项 -> 编译器 ...
dev-c++中编译含WINSOCK的代码出现错误的解决方法 -
haichuan11:
这个…… 代码不全真的是让人很憋屈的感觉啊
actionScript 3.0 图片裁剪及旋转 -
chenyw101:
老兄能留个QQ号吗?具体的我有些东西想请教下你
用VB制作网站登陆器 -
yantao1943:
貌似有点问题,只派发一次事件啊
使用ActionScript 2.0或ActionScript 3.0处理音频文件的提示点(cue
// yxbcjc2_1.cpp : 定义应用程序的入口点。 // #include "stdafx.h" #include "yxbcjc2_1.h" #define MAX_LOADSTRING 100 // 全局变量: HINSTANCE hInst; // 当前实例 TCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本 TCHAR szWindowClass[MAX_LOADSTRING]; // 主窗口类名 // 此代码模块中包含的函数的前向声明: ATOM MyRegisterClass(HINSTANCE hInstance); BOOL InitInstance(HINSTANCE, int); LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); HPEN hPen[7]; HBRUSH hBru[7]; int iPen[7]={PS_SOLID,PS_DASH,PS_DOT,PS_DASHDOT,PS_DASHDOTDOT,PS_NULL,PS_INSIDEFRAME}; int iBru[6]={HS_VERTICAL,HS_HORIZONTAL,HS_FDIAGONAL,HS_DIAGCROSS,HS_CROSS,HS_BDIAGONAL}; void MyDraw(HDC hdc) { //绘制线段 int y=0; int x1=120; int x2=190; for(int i=0;i<7;i++) { y = (i+1) * 30; SelectObject(hdc,hPen[i]); //选用画笔 MoveToEx(hdc,30,y,NULL); LineTo(hdc,100,y); } //绘制7种矩形 for(int i=0;i<=6;i++) { SelectObject(hdc,hBru[i]); //选用画刷 Rectangle(hdc,x1,30,x2,y); x1 += 100; x2 += 100; } } int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { // TODO: 在此放置代码。 MSG msg; HACCEL hAccelTable; // 初始化全局字符串 LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); LoadString(hInstance, IDC_YXBCJC2_1, szWindowClass, MAX_LOADSTRING); MyRegisterClass(hInstance); // 执行应用程序初始化: if (!InitInstance (hInstance, nCmdShow)) { return FALSE; } hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_YXBCJC2_1); // 主消息循环: while (GetMessage(&msg, NULL, 0, 0)) { if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } } return (int) msg.wParam; } // // 函数: MyRegisterClass() // // 目的: 注册窗口类。 // // 注释: // // 仅当希望在已添加到 Windows 95 的 // “RegisterClassEx”函数之前此代码与 Win32 系统兼容时, // 才需要此函数及其用法。调用此函数 // 十分重要,这样应用程序就可以获得关联的 // “格式正确的”小图标。 // ATOM MyRegisterClass(HINSTANCE hInstance) { WNDCLASSEX wcex; wcex.cbSize = sizeof(WNDCLASSEX); wcex.style = CS_HREDRAW | CS_VREDRAW; wcex.lpfnWndProc = (WNDPROC)WndProc; wcex.cbClsExtra = 0; wcex.cbWndExtra = 0; wcex.hInstance = hInstance; wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_YXBCJC2_1); wcex.hCursor = LoadCursor(NULL, IDC_ARROW); wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); wcex.lpszMenuName = (LPCTSTR)IDC_YXBCJC2_1; wcex.lpszClassName = szWindowClass; wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL); return RegisterClassEx(&wcex); } // // 函数: InitInstance(HANDLE, int) // // 目的: 保存实例句柄并创建主窗口 // // 注释: // // 在此函数中,我们在全局变量中保存实例句柄并 // 创建和显示主程序窗口。 // BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) { for(int i=0;i<7;i++) { hPen[i]=CreatePen(iPen[i],1,RGB(255,0,0)); if(6==i) hBru[i] = CreateSolidBrush(RGB(0,255,0)); else hBru[i] = CreateHatchBrush(iBru[i],RGB(0,255,0)); } HWND hWnd; hInst = hInstance; // 将实例句柄存储在全局变量中 hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, 850, 400, NULL, NULL, hInstance, NULL); if (!hWnd) { return FALSE; } ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); return TRUE; } // // 函数: WndProc(HWND, unsigned, WORD, LONG) // // 目的: 处理主窗口的消息。 // // WM_COMMAND - 处理应用程序菜单 // WM_PAINT - 绘制主窗口 // WM_DESTROY - 发送退出消息并返回 // // LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { int wmId, wmEvent; PAINTSTRUCT ps; HDC hdc; switch (message) { case WM_COMMAND: wmId = LOWORD(wParam); wmEvent = HIWORD(wParam); // 分析菜单选择: switch (wmId) { case IDM_ABOUT: DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About); break; case IDM_EXIT: DestroyWindow(hWnd); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } break; case WM_PAINT: hdc = BeginPaint(hWnd, &ps); // TODO: 在此添加任意绘图代码... MyDraw(hdc); EndPaint(hWnd, &ps); break; case WM_DESTROY: for(int i=0;i<6;i++) { DeleteObject(hPen[i]); DeleteObject(hBru[i]); } PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; } // “关于”框的消息处理程序。 LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_INITDIALOG: return TRUE; case WM_COMMAND: if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) { EndDialog(hDlg, LOWORD(wParam)); return TRUE; } break; } return FALSE; }// yxbcjc2_2.cpp : 定义应用程序的入口点。
// #include "stdafx.h" #include "yxbcjc2_2.h" #define MAX_LOADSTRING 100 // 全局变量: HINSTANCE hInst; // 当前实例 TCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本 TCHAR szWindowClass[MAX_LOADSTRING]; // 主窗口类名 // 此代码模块中包含的函数的前向声明: ATOM MyRegisterClass(HINSTANCE hInstance); BOOL InitInstance(HINSTANCE, int); LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); void MyPaint(HDC hdc,LPARAM lParam) { int x=LOWORD(lParam); int y=HIWORD(lParam); char str[20]={0}; TextOut(hdc,10,10,"鼠标坐标",(int)strlen("鼠标坐标")); sprintf(str,"X坐标:%d ",x); TextOut(hdc,30,30,str,(int)strlen(str)); sprintf(str,"Y坐标:%d ",y); TextOut(hdc,30,50,str,(int)strlen(str)); } int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { // TODO: 在此放置代码。 MSG msg; HACCEL hAccelTable; // 初始化全局字符串 LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); LoadString(hInstance, IDC_YXBCJC2_2, szWindowClass, MAX_LOADSTRING); MyRegisterClass(hInstance); // 执行应用程序初始化: if (!InitInstance (hInstance, nCmdShow)) { return FALSE; } hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_YXBCJC2_2); // 主消息循环: while (GetMessage(&msg, NULL, 0, 0)) { if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } } return (int) msg.wParam; } // // 函数: MyRegisterClass() // // 目的: 注册窗口类。 // // 注释: // // 仅当希望在已添加到 Windows 95 的 // “RegisterClassEx”函数之前此代码与 Win32 系统兼容时, // 才需要此函数及其用法。调用此函数 // 十分重要,这样应用程序就可以获得关联的 // “格式正确的”小图标。 // ATOM MyRegisterClass(HINSTANCE hInstance) { WNDCLASSEX wcex; wcex.cbSize = sizeof(WNDCLASSEX); wcex.style = CS_HREDRAW | CS_VREDRAW; wcex.lpfnWndProc = (WNDPROC)WndProc; wcex.cbClsExtra = 0; wcex.cbWndExtra = 0; wcex.hInstance = hInstance; wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_YXBCJC2_2); wcex.hCursor = LoadCursor(NULL, IDC_ARROW); wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); wcex.lpszMenuName = NULL;//(LPCTSTR)IDC_YXBCJC2_2; wcex.lpszClassName = szWindowClass; wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL); return RegisterClassEx(&wcex); } // // 函数: InitInstance(HANDLE, int) // // 目的: 保存实例句柄并创建主窗口 // // 注释: // // 在此函数中,我们在全局变量中保存实例句柄并 // 创建和显示主程序窗口。 // BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) { HWND hWnd; hInst = hInstance; // 将实例句柄存储在全局变量中 hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); if (!hWnd) { return FALSE; } ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); return TRUE; } // // 函数: WndProc(HWND, unsigned, WORD, LONG) // // 目的: 处理主窗口的消息。 // // WM_COMMAND - 处理应用程序菜单 // WM_PAINT - 绘制主窗口 // WM_DESTROY - 发送退出消息并返回 // // LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { int wmId, wmEvent; PAINTSTRUCT ps; HDC hdc; switch (message) { case WM_COMMAND: wmId = LOWORD(wParam); wmEvent = HIWORD(wParam); // 分析菜单选择: switch (wmId) { case IDM_ABOUT: DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About); break; case IDM_EXIT: DestroyWindow(hWnd); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } break; case WM_MOUSEMOVE: /*hdc = BeginPaint(hWnd,&ps); MyPaint(hdc,lParam); EndPaint(hWnd,&ps); InvalidateRect(hWnd,NULL,FALSE);*/ hdc = GetDC(hWnd); MyPaint(hdc,lParam); ReleaseDC(hWnd,hdc); case WM_PAINT: hdc = BeginPaint(hWnd, &ps); // TODO: 在此添加任意绘图代码... //MyPaint(hdc,lParam); EndPaint(hWnd, &ps); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; } // “关于”框的消息处理程序。 LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_INITDIALOG: return TRUE; case WM_COMMAND: if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) { EndDialog(hDlg, LOWORD(wParam)); return TRUE; } break; } return FALSE; }
发表评论
-
骨骼蒙皮动画(Skinned Mesh)的原理解析
2015-12-05 19:11 970一)3D模型动画基本原理和分类 3D模型动画的基本原 ... -
Papervision Perspective Line material
2008-05-04 10:16 1701// Perspective Line material fo ... -
PV3D学习(1)--插入图片
2008-05-04 09:58 2106只需要将上一例中以下 ... -
详解DX9下3D游戏编程1
2008-04-19 21:28 3172Introduction to 3D Game Program ... -
Direct3D入门之框架的搭建
2008-04-18 09:33 2736学习一样东西,最好能够从最基础做起。学习D3D,笔者并不赞同直 ... -
Papervision3D の BitmapMaterial と MovieMaterial の使用
2008-04-03 16:01 2252package { import flash.disp ... -
BitmapFileMaterial的用法
2008-04-01 12:19 2975package com.hclown.earth3d.map ... -
pv教学
2008-03-28 09:50 1707Papervision3D 教學 part 3.2 -- 子母 ... -
魔術方塊
2008-03-28 09:47 1281看到以前已經有人在沒有 Flash 3D engine 的幫助 ... -
賽車程式
2008-03-28 09:46 1179package { import flash.display. ... -
PV3D2 .0 的经典 包含各种渲染和触发
2008-03-17 14:52 2415最近发现的宝贝,分享下!!值得收藏!! /* ... -
PV3D第一个测试文件
2008-03-15 11:34 2551第一个PV3D的测试文件: 这个实例是根据一个网站视频教程里 ...
相关推荐
Visual C++ VC 游戏 编程 基础 肖永亮 飞思 DirectX 3D 音效 视觉
Visual C++ VC 游戏 编程 基础 肖永亮 飞思 DirectX 3D 音效 视觉
Visual C++ VC 游戏 编程 基础 肖永亮 飞思 DirectX 3D 音效 视觉
在“Visual C++游戏编程基础10”这个主题中,我们将会探讨如何使用Microsoft的Visual C++集成开发环境(IDE)来创建基本的游戏程序。这一系列教程的目标是为初学者提供一个良好的起点,让他们了解游戏编程的基础知识...
《Visual C++游戏编程基础》是一本由肖永亮主编的专业书籍,主要针对初学者,讲解如何使用Visual C++这一强大的编程工具进行游戏开发。在本书中,读者将学习到C++语言的基础知识,以及如何利用它来创建交互式游戏。...
精通Visual C++数字图像处理精通Visual C++数字图像处理精通Visual C++数字图像处理精通Visual C++数字图像处理精通Visual C++数字图像处理精通Visual C++数字图像处理精通Visual C++数字图像处理
本书是一本独具匠心的计算机三维编程教程,展现了韩国优秀的游戏编程技术的内涵。书中涉及到比较深入的数学、物理和计算机编程的基本概念,作者简练地应用了这些知识,但并无枯燥无味地说教,而是根据自己丰富的教学...
《VC++6游戏编程入门及源码》是一个针对初学者的教程资料,旨在帮助学习者掌握使用Microsoft Visual C++ 6.0进行游戏开发的基本技能。这个资源包含了多个游戏编程的实例源码,通过实际操作,可以让学习者深入理解...