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

广西专业建网站建立 网站服务器

广西专业建网站,建立 网站服务器,网站 技术,wordpress与微信小程序;运行效果 ;win32汇编环境,窗口程序中使编辑框控件子类化的示例一 ;窗口子类化#xff0c;就是把某种控件#xff0c;自已再打造一遍#xff0c;加入自已的功能。比如弄个特殊形状的按钮#xff0c;或只能输入特殊字符的编辑框 ;当然#xff0c;一般来说#xff0c;这都是…;运行效果 ;win32汇编环境,窗口程序中使编辑框控件子类化的示例一 ;窗口子类化就是把某种控件自已再打造一遍加入自已的功能。比如弄个特殊形状的按钮或只能输入特殊字符的编辑框 ;当然一般来说这都是很麻烦的事儿。其它的语言像VC之类的有子类的概念其原理也是这些但是又进行了更复杂的封装。所以知其然更知其所以然很重要。 ;这里的例子是把默认的编辑框弄成只能输入十六进制的编辑框。 ;复制下面代码进RadAsm可直接编译。重要部分加备注。 ;下面为asm文件 .386  .model flat,stdcall  option casemap:none  include      windows.inc  include      user32.inc  includelib   user32.lib            include      kernel32.inc  includelib   kernel32.lib  ; WinMain PROTO :DWORD,:DWORD,:DWORD,:DWORD        EditWndProc PROTO :DWORD,:DWORD,:DWORD,:DWORD                                           ; .DATA                                    ClassName   db SimpleWinClass,0         AppName     db 窗口程序的模版,0 szSTClass   db static,0                          ;静态控件类名 szSTCaption db 该编辑框只能输入十六进制数值:,0 EditClass   db EDIT,0                            ;编辑框的类名 Message     db 你按下了回车键,0  .DATA?                                   hInstance   HINSTANCE  ?                 CommandLine LPSTR      ?  hwndEdit    dd ?  OldWndProc  dd ?                  ; .CODE                       start:                       invoke GetModuleHandle, NULL                                                     mov hInstance,eax  invoke GetCommandLine                                                                                        mov CommandLine,eax  invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT         invoke ExitProcess, eax                                           ; WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD          LOCAL wc:WNDCLASSEX                                                   LOCAL msg:MSG          LOCAL hwnd:HWND  mov   wc.cbSize,SIZEOF WNDCLASSEX                                     mov   wc.style, CS_HREDRAW or CS_VREDRAW                              mov   wc.lpfnWndProc, OFFSET WndProc                                 mov   wc.cbClsExtra,NULL          mov   wc.cbWndExtra,NULL          push  hInstance          pop   wc.hInstance          mov   wc.hbrBackground,COLOR_WINDOW          mov   wc.lpszMenuName,NULL          mov   wc.lpszClassName,OFFSET ClassName          invoke LoadIcon,NULL,IDI_APPLICATION                                   mov   wc.hIcon,eax          mov   wc.hIconSm,eax          invoke LoadCursor,NULL,IDC_ARROW                                       mov   wc.hCursor,eax          invoke RegisterClassEx, addr wc                                       invoke CreateWindowEx,NULL, ADDR ClassName,ADDR AppName,WS_OVERLAPPEDWINDOW,100,100,270,150, NULL,NULL,hInst, NULL          mov   hwnd,eax          invoke ShowWindow, hwnd,CmdShow                                       invoke UpdateWindow, hwnd                                     .while TRUE                                                                    invoke GetMessage, ADDR msg,NULL,0,0                  .break .if (!eax)                  invoke TranslateMessage, ADDR msg                  invoke DispatchMessage, ADDR msg          .endw          mov     eax,msg.wParam                                                  ret  WinMain endp  ; WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM            .if uMsg WM_CREATE                 invoke CreateWindowEx,NULL,ADDR szSTClass,ADDR szSTCaption, WS_CHILD WS_VISIBLE,20, 20, 250, 20,hWnd,NULL,NULL,NULL                                                                          ;创建静态控件用来显示文本 invoke CreateWindowEx,WS_EX_CLIENTEDGE,ADDR EditClass,NULL,WS_CHILDWS_VISIBLEWS_BORDER,20,50,210,25,hWnd,NULL,hInstance,NULL ;创建编辑框                 mov hwndEdit,eax     ;保存编辑框的句柄                 invoke SetFocus,eax  ;让编辑框得到焦点就是程序启动后光标在编辑框里 invoke SetWindowLong,hwndEdit,GWL_WNDPROC,addr EditWndProc     ;把原来的窗口函数地址替换为自定义窗口函数的地址                 mov OldWndProc,eax                                             ;返回值则是原来的窗口函数地址 .elseif uMsg WM_DESTROY                                                            invoke PostQuitMessage,NULL                                        .else                  invoke DefWindowProc,hWnd,uMsg,wParam,lParam                      ret      .endif      xor eax,eax      ret  WndProc endp  ; EditWndProc PROC hEdit:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD   ;这个窗口函数是插入主窗口消息循环的函数只截取了2个消息即下面的 WM_CHAR 和 WM_KEYDOWN其它的消息不管仍交回原主窗口 WndProc 函数处理     .if uMsg WM_CHAR        ;截取了WM_CHAR消息相当于在这个编辑框里按任何字符都在这里面处理。而里面除了处理这十六个字符和删除键backspace键外没有对其它字符的处理所以会导致按其它的字符没有反应         mov eax,wParam          .if (al0 al9) || (alA alF) || (ala alf) || alVK_BACK              .if ala alf                  sub al,20h                                            ;加上20h是让小写的变成大写的             .endif              invoke CallWindowProc,OldWndProc,hEdit,uMsg,eax,lParam    ;如果在CHAR消息发生时不是在这些范围内的字符则返回这个地址 OldWndProc 函数继续执行就是返回原来的主窗口WndProc函数执行其它消息             ret          .endif      .elseif uMsgWM_KEYDOWN   ;截取了WM_KEYDOWN消息         mov eax,wParam          .if al VK_RETURN    ;如果按了回车键则显示输入的是什么内容             invoke MessageBox,hEdit,addr Message,addr AppName,MB_OKMB_ICONINFORMATION              invoke SetFocus,hEdit          .else              invoke CallWindowProc,OldWndProc,hEdit,uMsg,wParam,lParam ;如果在按键消息发生时不是按的回车键则返回这个地址 OldWndProc 函数继续执行             ret          .endif      .else          invoke CallWindowProc,OldWndProc,hEdit,uMsg,wParam,lParam     ;如果不是上面的 WM_CHAR 和 WM_KEYDOWN 消息则返回这个地址 OldWndProc 函数继续执行         ret      .endif      xor eax,eax      ret  EditWndProc endp ; end start
http://www.dnsts.com.cn/news/205067.html

相关文章:

  • 不一样维度的网站网站建设php有哪些
  • 天津实用网站建设平台前端代码
  • 如何用普通电脑做网站服务器网站建设中网站需求分析报告作用
  • 怎么让网站绑定域名福州网站搭建
  • 做网站需要编程么宁波公司做企业网站
  • 如何建设简单网站义乌市微畅网络科技有限公司
  • 佛山新网站建设如何怎样管理网站
  • 上海营销型网站报价通化网站建设公司
  • 做网站设计要适配到手机端么孝感网站设计
  • 个人网站建站系统高大上的广告公司名字
  • 杰迅山西网站建设销售平台app
  • 怎么注册网站太原网站搜索优化
  • 河间建设网站新颖的网络营销方式
  • 婚庆公司网站建设总结报告crm系统营销
  • 做网站公司的出路wordpress滑动门短代码
  • 网站开发公司是干嘛的昆明网站开发多少钱
  • 智能锁东莞网站建设个人网站域名名称大全
  • html网站模板建站wordpress增加评论验证码
  • 网站被攻击的方法2017优惠券网站怎么做
  • 网站群系统破解版网站设计作品案例
  • 网站建设一般多少wordpress如何实现301跳转
  • 防伪码做网站的还能没导入吗热门关键词查询
  • 做微网站多少钱企业管理咨询属于哪个行业
  • 通州网站建设站开发评价建网站怎么备案
  • 专业网站设计哪家好网站建设微信公众号文章
  • 网站因为备案关闭了 怎么办关于招聘的网站开发图
  • 网站建设信息科技公司石林县工程建设个体交易网站
  • 网站建设初学互联网营销缺点
  • 一起做网站潮汕网页设计与制作配套素材
  • 锦江网站建设江西住房和城乡建设部网站首页