3.高级Windows编程

资源:

  资源编译器首先检查已存在include 头文件中定义的符号。如果符号已经存在,资源编译器就通过 整型ID来引用该符号所指向的资源。否则,资源编译器就假定它是个字符串。
LoadIcon( hInstance, MAKEINTRESOURCE( ID_ICON1 ) );
LoadIcon( hInstance, MAKEINTRESOURCE( _T("ID_ICON1") ) );


设置游标: HCURSOR SetCursor( HCURSOR hCursor );

int LoadString( HISNTANCE hInstance, UINT nID, LPTSTR lpBuffer, int nBuferMax );

BOOL PalySound( LPCSTR pszSound, HMODULE hmod, DWORD, fdwSound );


------------------------------------------------------

GDI:

    BeginPaint() -> EndPaint() 向Windows发出消息,指示该窗口内容已经恢复。如果GetDC() -> ReleaseDC() 代替了 WM_PAINT的处理程序,则必须调用 BOOL ValidateRect( HWND, CONST RECT* );

  PAINTSTRUCT中包含无效的矩形。

  BOOL InvalidateRect( HWND hWnd, CONST RECT* lpRect, BOOL bErase );
  如果 lpRect为空,则使整个窗口无效


------------------------------------------------------

视频显示基础和色彩:

  像素、分辨率、色深(BBP)、隔行扫描/逐行扫描、光栅化(Rasterization)、视频RAM、刷新速率(Hz、fps)、2D加速、3D加速。

  RGB()宏 返回 COLORREF

  SetBkMode(hdc, TRANSPARENT );


------------------------------------------------------

处理键盘事件:

  WM_CHAR, WM_KEYDOWN / WM_KEYUP,
  GetAsyncKeyState();  //随时随地获得键盘状态

  inline BOOL IfKeyDown( vk_code ) {
     return ( GetAsyncKeyState( vk_code ) & 0x8000 ) ? 1: 0;   }

SendMessage() 实际上调用WinProc();
PostMessage()发往消息队列;
  /
   if( IfKeyDown( VK_ESCAPE ) )
       SendMessage( hwnd, WM_CLOSE, 0, 0 );
  /
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值