当前位置: 首页 > news >正文

什么网站做生鲜比较好免费建立自己的网站空间

什么网站做生鲜比较好,免费建立自己的网站空间,网站seo教材,广州影视制作公司这一节我们使用计时器#xff0c;每隔一秒获取当前鼠标坐标位置的像素值#xff0c;并显示在窗口#xff0c;这就相当于是一个简单的取色器了。 本节必须掌握的知识点#xff1a; 第47练#xff1a;取色器 7.4.1 第47练#xff1a;取色器 /*----------------------------… 这一节我们使用计时器每隔一秒获取当前鼠标坐标位置的像素值并显示在窗口这就相当于是一个简单的取色器了。 本节必须掌握的知识点         第47练取色器 7.4.1 第47练取色器 /*------------------------------------------------------------------ 047  WIN32 API 每日一练      第47个例子WHATCLR.C使用计时器---显示了鼠标指针当前所指的热点的RGB颜色      FindWindowSize 函数---设置窗口宽和高      CreateIC函数      GetPixel函数      SetPixel函数      GetRValue宏 (c) www.bcdaren.com, 2020 ----------------------------------------------------------------*/ #include windows.h #define ID_TIMER 1 void FindWindowSize (int *, int *) ; LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,  PSTR szCmdLine, int iCmdShow) {       static TCHAR szAppName[] TEXT (WhatClr) ;     …(略)      //获取窗口宽和高       FindWindowSize (cxWindow, cyWindow) ;       hwnd CreateWindow (szAppName, TEXT (What Color), //创建窗口 //重叠、标题、菜单、细框                 WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_BORDER,                 CW_USEDEFAULT, CW_USEDEFAULT,                 cxWindow, cyWindow,                 NULL, NULL, hInstance, NULL) ;       ShowWindow (hwnd, iCmdShow) ;       UpdateWindow (hwnd) ;       while (GetMessage (msg, NULL, 0, 0))       {            TranslateMessage (msg) ;            DispatchMessage (msg) ;       }       return msg.wParam ; } //设置窗口宽和高 void FindWindowSize (int * pcxWindow, int * pcyWindow) {       HDC hdcScreen ;       TEXTMETRIC tm ;      //创建一个设备环境,返回句柄仅限用于获取系统信息       hdcScreen CreateIC (TEXT (DISPLAY), NULL, NULL, NULL) ;      //获取字体信息       GetTextMetrics (hdcScreen, tm) ;       DeleteDC (hdcScreen) ; //删除设备对象      //窗口宽2个边框12个字符平均宽度       * pcxWindow 2 * GetSystemMetrics (SM_CXBORDER)   12 * tm.tmAveCharWidth ;     //窗口高2个边框1个标题2个字高       * pcyWindow 2 * GetSystemMetrics (SM_CYBORDER)   GetSystemMetrics (SM_CYCAPTION)       2 * tm.tmHeight ; } LRESULT CALLBACK WndProc ( HWND hwnd, UINT message, WPARAM wParam,LPARAM lParam) {       static COLORREF cr, crLast ;       static HDC hdcScreen ;       HDC hdc ;       PAINTSTRUCT ps ;       POINT pt ;       RECT rc ;       TCHAR szBuffer [16] ;       switch (message)       {       case WM_CREATE:           //创建一个信息上下文设备环境--使用显示器设备环境            hdcScreen CreateDC (TEXT (DISPLAY), NULL, NULL, NULL) ;            SetTimer (hwnd, ID_TIMER, 1000, NULL) ; //设置计时器            return 0 ;       case WM_TIMER:            GetCursorPos (pt) ; //获取鼠标位置信息            cr GetPixel (hdcScreen, pt.x, pt.y) ; //获取指定位置的GRB颜色            SetPixel (hdcScreen, pt.x, pt.y, 0) ; //指定位置设置一个黑色像素            if (cr ! crLast) //如果和上次获取的颜色不同            {                 crLast cr ;                 InvalidateRect (hwnd, NULL, FALSE) ; //重绘窗口            }            return 0 ;       case WM_PAINT:            hdc BeginPaint (hwnd, ps) ;            GetClientRect (hwnd, rc) ;           //获取颜色值-十六进制            wsprintf (szBuffer, TEXT ( %02X %02X %02X ),            GetRValue (cr), GetGValue (cr), GetBValue (cr)) ;            DrawText (hdc, szBuffer, -1, rc,            DT_SINGLELINE | DT_CENTER | DT_VCENTER) ; //显示颜色值            EndPaint (hwnd, ps) ;            return 0 ;      case WM_DESTROY:            DeleteDC (hdcScreen) ; //删除设备            KillTimer (hwnd, ID_TIMER) ; //删除计时器            PostQuitMessage (0) ;            return 0 ;       }       return DefWindowProc (hwnd, message, wParam, lParam) ; } /****************************************************************************** CreateIC函数:创建指定装置的信息的上下文。 信息上下文提供了一种无需创建设备上下文DC即可快速获取有关设备信息的方法。 但是GDI绘图功能不能接受信息上下文的句柄。 HDC CreateICA(   LPCSTR  pszDriver,//指向以空字符结尾的字符串的指针该字符串指定设备驱动程序的名称例如Epson。   LPCSTR  pszDevice,//指向以空字符结尾的字符串的指针该字符串指定正在使用的特定输出设备的名称如打印管理器   LPCSTR  pszPort,//该参数将被忽略应设置为NULL。   const DEVMODEA *pdm    //指向DEVMODE结构的指针该结构包含设备驱动程序的设备特定的初始化数据。 ); ******************************************************************************* GetPixel函数:检索在指定坐标的红绿蓝RGB颜色的像素值。 COLORREF GetPixel(   HDC hdc, //设备上下文   int x,  //要检查的像素的X坐标以逻辑单位表示。   int y   //要检查的像素的y坐标以逻辑单位表示。 ); ******************************************************************************* SetPixel函数:设置指定坐标的指定颜色像素。 COLORREF SetPixel(   HDC hdc, //设备上下文   int x,  //要检查的像素的X坐标以逻辑单位表示。   int y,   //要检查的像素的y坐标以逻辑单位表示。   COLORREF color//用于绘制点的颜色。若要创建COLORREF颜色值请使用RGB宏。 ); ******************************************************************************* GetRValue宏:检索用于红绿蓝RGB值的红色成分的强度值。 void GetRValue(    rgb    //指定RGB颜色值。 ); */        运行结果 图7-5 取色器   总结        实例WHATCLR.C在WinMain主程序中创建一个cxWindow宽和cyWindow高的窗口。cxWindow宽和cyWindow高是由自定义函数FindWindowSize获取的。        ●FindWindowSize函数      //创建一个设备环境,返回句柄仅限用于获取系统信息DISPLAY表示显示器设备       hdcScreen CreateIC (TEXT (DISPLAY), NULL, NULL, NULL) ;      //获取字体信息       GetTextMetrics (hdcScreen, tm) ;       DeleteDC (hdcScreen) ; //删除设备对象      //窗口宽2个边框12个字符平均宽度       * pcxWindow 2 * GetSystemMetrics (SM_CXBORDER)   12 * tm.tmAveCharWidth ;     //窗口高2个边框1个标题2个字高       * pcyWindow 2 * GetSystemMetrics (SM_CYBORDER) GetSystemMetrics (SM_CYCAPTION) 2 * tm.tmHeight ;        ●窗口过程        处理WM_CREATE消息调用CreateDC函数获取显示器设备DISPLAY的句柄。然后调用SetTimer创建一个间隔时间为1秒的计时器。        处理WM_TIMER消息调用GetCursorPos函数获取当前鼠标位置坐标然后调用GetPixel函数获取当前鼠标位置坐标处的像素值并调用SetPixel函数绘制一个黑色像素点标识鼠标位置。如果当前鼠标坐标点的像素值与上次获取的像素值不同则重绘窗口。        处理WM_PAINT消息调用GetClientRect函数获取当前窗口客户区矩形。然后调用DrawText函数在窗口绘制RGB颜色值。        【注意】GetPixel函数获取的像素值需要使用GetRValue宏将其分解为RGB颜色值。        处理WM_DESTROY消息时删除屏幕设备环境句柄销毁计时器后发送WM_QUIT消息结束。
http://www.dnsts.com.cn/news/180043.html

相关文章:

  • 哈尔滨seo整站优化视频网站建设模版
  • 1网站建设的目标是什么意思wordpress 插件扫描
  • 文山做女主播的在哪个网站redux wordpress
  • 技能培训中心网站建设医院建设网站
  • 仓库管理用什么软件热门seo推广排名稳定
  • 网站管理工作是具体应该怎么做小程序模板制作软件
  • 图片模板免费下载黄石seo
  • 网站建设目标及需求wordpress有没有linux
  • 做公司标志用哪个网站深圳网络推广seo软件
  • 网站关键词上首页网站开发怎么配合
  • 网站app在线生成器wordpress框架播放器
  • 网站建设优化服务如何深圳房产 网站建设
  • 怎么模仿一个网站做电商看的网站有哪些内容
  • 个人做百度云下载网站吗wordpress搬家换域名
  • 浙江省住房和城建建设厅网站企业设计网站公司
  • 网站常用的字体台州手机网站建设
  • joomla 网站模板wordpress改大
  • php网站开发教程 pdf爱用建站 小程序
  • 公司网站设计与实现的项目建议书wordpress文章空两格
  • 做公司+网站建设价格邵阳县做网站
  • 杭州做网站比较出名的公司海外服务器怎么搭建
  • 坪地网站建设价格自媒体交易网站开发
  • 深圳凌 网站开发个人备案网站可以做产品推广
  • js获取网站html网站如何做水晶按钮
  • 大气门户网站百度云如何建设网站
  • 搭建免费网站南昌个人网站制作怎么做
  • 建立网站需要注意什么企业汽车网站建设
  • 深圳网站建设与设计制作网站改版准备
  • 南浔做网站seo推广公司教程
  • 郑州做音响网站的公司企业网站建设设置那些栏目