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

商务网站开发流程有三个阶段销售外包公司

商务网站开发流程有三个阶段,销售外包公司,合肥做网站维护的公司,深圳企业登记注册;运行效果 ;win32汇编环境,对 WM_MOUSEMOVE 消息的理解 ;理解在 WM_MOUSEMOVE 消息发生时,同时来的wParam和lParam值的含义,并取出各自的值进行运用。从这例子也可以更好的理解windows的消息机制. ;WM_MOUSEMOVE消息就是当鼠标移动时,发送给窗…

;运行效果

;win32汇编环境,对 WM_MOUSEMOVE 消息的理解
;理解在 WM_MOUSEMOVE 消息发生时,同时来的wParam和lParam值的含义,并取出各自的值进行运用。从这例子也可以更好的理解windows的消息机制.
;WM_MOUSEMOVE消息就是当鼠标移动时,发送给窗口的消息。如果窗口上面的其它控件,则经过控件上面的不起作用。因为其它控件不是主窗口
;直接抄进RadAsm可编译运行。重要部分加备注。
;下面为asm文件
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.386 
.model flat,stdcall 
option casemap:none 
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 文件定义
include    windows.inc 
include    user32.inc 
include    kernel32.inc 

includelib user32.lib 
includelib kernel32.lib 
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 自定义函数声明
DlgProc proto :DWORD,:DWORD,:DWORD,:DWORD   ;对话框窗口函数
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

; 数据段
;Equ 等值定义

ICO_MAIN   equ 1000    ;图标 
IDSTATIC01 equ 21 
IDSTATIC02 equ 22
IDSTATIC03 equ 23
IDSTATIC04 equ 24
IDSTATIC05 equ 25
IDSTATIC06 equ 26
IDSTATIC07 equ 27
IDSTATIC08 equ 28

.data 
DlgName      db "MyDialog",0 

szCurrentXY  db "当前鼠标位置是:%d.%d",0
szMsg        db "提示",0
szCheshi     db "当前的十六进制值是:%lx",0

szMouseLN    db "鼠标左键状态:关闭",0
szMouseLY    db "鼠标左键状态:开启",0

szMouseRN    db "鼠标右键状态:关闭",0
szMouseRY    db "鼠标右键状态:开启",0

szSHIFTNO    db " SHIFT键状态:关闭",0
szSHIFTYES   db " SHIFT键状态:开启",0

szCtrlNO     db " Ctrl键状态:关闭",0
szCtrlYES    db " Ctrl键状态:开启",0

szMouseCN    db "鼠标中键状态:关闭",0
szMouseCY    db "鼠标中键状态:开启",0

szXBUTTON1N   db "XBUTTON1状态:关闭",0
szXBUTTON1Y   db "XBUTTON1状态:开启",0

szXBUTTON2N   db "XBUTTON1状态:关闭",0
szXBUTTON2Y   db "XBUTTON1状态:开启",0
.data? 
hInstance HINSTANCE             ? 
.const 
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
   
; 代码段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.code 
start:     
        invoke GetModuleHandle, NULL     
        mov    hInstance,eax     
        invoke DialogBoxParam, hInstance, ADDR DlgName,NULL, addr DlgProc, NULL     
        invoke ExitProcess,eax 
DlgProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM 
        LOCAL @szBuffer[256]:byte 
        LOCAL @hX,@hY
       
        .if      uMsg == WM_INITDIALOG                 
                        invoke    LoadIcon,hInstance,ICO_MAIN           
                        invoke    SendMessage,hWnd,WM_SETICON,ICON_BIG,eax  

        .elseif uMsg == WM_MOUSEMOVE
                    
                    ;在 WM_MOUSEMOVE 消息发生时,同时来的wParam的值是32位的,其低16位的值是各种虚拟密钥的象征。
                    ;而同时来的lParam值里则是当前鼠标光标的X坐标和Y坐标。lParam是32位的,其低16位是X坐标值,而高16位则是Y坐标
                    ;比如你按下SHITE键时移动鼠标,其wParam的低16位会变成 00000100B
                    ;比如你按下Ctrl键时移动鼠标,其wParam的低16位会变成  00001000B  
                    ;比如你同时按下SHITE键和Ctrl键并移动鼠标,其wParam的低16位会变成  00001100B ,就是上面2个值的相加            
                    mov eax, wParam     ;判断鼠标左键是否关闭
                    and ax, 00000001B   ;按位逻辑与操作,即把ax的值的0位留下,就是从右向左数的第1位,就是这个1,其它位都置0先
                    .if ax ==      1B   
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC02,WM_SETTEXT,0,addr szMouseLY
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC02,WM_SETTEXT,0,addr szMouseLN    
                    .endif
                    
                    mov eax, wParam     ;判断鼠标右键是否关闭  
                    and ax, 00000010B
                    .if ax ==     10B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC03,WM_SETTEXT,0,addr szMouseRY
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC03,WM_SETTEXT,0,addr szMouseRN    
                    .endif
                    
                    mov eax, wParam     ;判断SHITE键是否关闭  
                    and ax, 00000100B
                    .if ax ==    100B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC04,WM_SETTEXT,0,addr szSHIFTYES
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC04,WM_SETTEXT,0,addr szSHIFTNO    
                    .endif
                                        
                    mov eax, wParam     ;判断Ctrl键是否关闭  
                    and ax, 00001000B
                    .if ax ==   1000B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC05,WM_SETTEXT,0,addr szCtrlYES
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC05,WM_SETTEXT,0,addr szCtrlNO    
                    .endif
                    
                    mov eax, wParam     ;判断鼠标中键是否关闭  
                    and ax, 00010000B
                    .if ax ==  10000B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC06,WM_SETTEXT,0,addr szMouseCY
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC06,WM_SETTEXT,0,addr szMouseCN    
                    .endif
                    
                    mov eax, wParam     ;判断XBUTTON1键是否关闭,就是高级鼠标的左侧键,一般鼠标没有  
                    and ax, 00100000B
                    .if ax == 100000B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC07,WM_SETTEXT,0,addr szXBUTTON1Y
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC07,WM_SETTEXT,0,addr szXBUTTON1N    
                    .endif
                    
                    mov eax, wParam     ;判断XBUTTON2键是否关闭,就是高级鼠标的右侧键,一般鼠标没有  
                    and ax,  01000000B
                    .if ax == 1000000B
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC08,WM_SETTEXT,0,addr szXBUTTON2Y
                    .else
                        invoke  SendDlgItemMessage,hWnd,IDSTATIC08,WM_SETTEXT,0,addr szXBUTTON2N    
                    .endif
                    
                    ;以下开始取出lParam的低16位值和高16值,即鼠标的X坐标和Y坐标
                    mov eax, lParam
                    movzx eax,ax
                    mov @hX,eax
                    mov eax, lParam
                    shr eax,16
                    movzx eax,ax
                    mov @hY,eax
                    invoke  wsprintf,addr @szBuffer,addr szCurrentXY,@hX,@hY
                    invoke  SendDlgItemMessage,hWnd,IDSTATIC01,WM_SETTEXT,0,addr @szBuffer                                
        .elseif uMsg == WM_CLOSE                 
                        invoke EndDialog, hWnd,NULL         
        .else                
                mov eax,FALSE                 
                ret                 
        .endif                 
        mov eax,TRUE         
        ret 
DlgProc endp 

end start 

;下面为rc文件内容
#include "resource.h"              //提示缺少该文件,可以在资源里下载

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#define ICO_MAIN    1000    //图标
#define IDSTATIC01  21 
#define IDSTATIC02  22 
#define IDSTATIC03  23
#define IDSTATIC04  24
#define IDSTATIC05  25
#define IDSTATIC06  26
#define IDSTATIC07  27
#define IDSTATIC08  28
 
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ICO_MAIN    ICON        "Main.ico"

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

//定义对话框
MyDialog DIALOG 10, 10, 160, 170 
STYLE  DS_CENTER | WS_CAPTION | WS_MINIMIZEBOX | WS_SYSMENU | WS_VISIBLE | WS_OVERLAPPED | DS_MODALFRAME | DS_3DLOOK 
CAPTION "对话框程序模版"
FONT 12, "方正姚体"
BEGIN
     CONTROL "可以按着CTRL或SHIFT键移动鼠标试试", -1, "Static", WS_CHILD | WS_VISIBLE, 10, 10, 200, 10
     CONTROL "当前鼠标位置:", IDSTATIC01, "Static", WS_CHILD | WS_VISIBLE, 30, 30, 100, 10 
     CONTROL "鼠标左键状态:", IDSTATIC02, "Static", WS_CHILD | WS_VISIBLE, 30, 50, 100, 10
     CONTROL "鼠标右键状态:", IDSTATIC03, "Static", WS_CHILD | WS_VISIBLE, 30, 65, 100, 10
     CONTROL "SHIFT键状态:", IDSTATIC04, "Static", WS_CHILD | WS_VISIBLE, 30, 80, 100, 10
     CONTROL "Ctrl键状态:", IDSTATIC05, "Static", WS_CHILD | WS_VISIBLE, 30, 95, 100, 10
     CONTROL "鼠标中键状态:", IDSTATIC06, "Static", WS_CHILD | WS_VISIBLE, 30, 110, 100, 10
     CONTROL "XBUTTON1状态:", IDSTATIC07, "Static", WS_CHILD | WS_VISIBLE, 30, 125, 100, 10
     CONTROL "XBUTTON2状态:", IDSTATIC08, "Static", WS_CHILD | WS_VISIBLE, 30, 140, 100, 10
END 

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

http://www.dtcms.com/wzjs/416420.html

相关文章:

  • 平阳住房和城乡规划建设局网站搜索优化的培训免费咨询
  • 广州市官网网站建设平台网站视频
  • 万网ecs如何上传网站合肥网络公司seo建站
  • 网站开发 参考文献南京今日新闻头条
  • 暗网做网站图片优化软件
  • 最近新冠疫情最新动态重庆seo网页优化
  • 有口碑的宁波网站建设深圳网站设计十年乐云seo
  • 电子商务微网站制作2023新闻大事10条
  • 手机网站建设企业关键词挖掘站长工具
  • 企业手机网站cms如何做好seo基础优化
  • 大朗镇网站仿做网络销售的好处和意义
  • 帮别人做网站哪里可以接单亚马逊关键词搜索工具
  • 政府网站互动平台的建设百度优化排名软件
  • 公益网站建设 参考文献谷歌浏览器下载app
  • 新疆建设兵团工程网站百度云官方网站
  • 个人主页网站制作模板竞价点击软件工具
  • 北京网站建设方案外包网站优化策略分析论文
  • 深圳自适应网站电商运营培训哪个机构好
  • 网站内容上传要求营销型企业网站的功能
  • 重庆金融网站建设百度提交网址
  • 技术支持 合肥网站建设自己的网站
  • 用爱站工具包如何做网站地图商业推广
  • wordpress 评论 顶 踩360优化大师官网
  • 北京定制网站开发公司国家税务总局网
  • 网站如何做外链桂平seo关键词优化
  • 百度搜索网站怎么做软文广告例子
  • 一千元做网站全国人大常委会副委员长
  • 网站的构成怎么开网站
  • 山西省委组织部网站两学一做aso平台
  • 网站建设后怎么买卖交易网