文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络工具软件加密破解RichEdit 控件:更多的正文操作
精品推荐
特别推荐
·暴力破解知识原理与相关破解经验技巧
·DVD影片(区码)的保护与破解
·常用破解网络密码的方法多个
·攻破Windows系统加密保护之EFS解密
·巧用系统自带功能给文件夹加密
·加密文件看见“照妖镜”还不显原型
·破解入门教学(二)
·破解光盘加密:把DVD大片拷到硬盘上看
·远程主机探测技术FAQ集 - 扫描篇
·网络游戏封包基础
热点TOP10
·压缩文件的密码破解
·暴力破解知识原理与相关破解经验技巧
·溯雪使用说明
·软件狗[Dongles]的加密与解密技术
·破解入门教学(二)
·电脑中的十二种常用密码破解法
·奇门遁甲算法分析
·破解windowsXP,window2000的开机密码
·即时语音提示 & 校对软件InsTalk注册码及注册机 上
·五种windows密码设置及破解

RichEdit 控件:更多的正文操作

日期:2008年5月28日 作者: 查看:[大字体 中字体 小字体]


RichEdit 控件提供了一个更好的方案,它可以把这些消息通知父窗口。
为了注册得到通知消息,父窗口发送 EM_SETEVENTMASK 消息给 RichEdit 控件,
指定它对哪些消息感兴趣。
EM_SETEVENTMASK 具有以下的语法:

	EM_SETEVENTMASK	wParam == 没有使用,必须为 0 。	lParam == 事件掩码值。他可以是以下表格里标志值的任意组合。
ENM_CHANGE发送 EN_CHANGE 通知ENM_CORRECTTEXT发送 EN_CORRECTTEXT 通知ENM_DRAGDROPDONE发送 EN_DRAGDROPDONE 通知ENM_DROPFILES发送 EN_DROPFILES 通知ENM_KEYEVENTS为键盘消息发送 EN_MSGFILTER 通知ENM_LINKRich Edit 2.0 或以后版本: 当鼠标在具有 CFE_LINK 风格的正文上面移过,而且执行了一个或几个鼠标动作时,就发送 EN_LINK 通知。ENM_MOUSEEVENTS为鼠标消息发送 EN_MSGFILTER 通知。ENM_OBJECTPOSITIONS发送 EN_OBJECTPOSITIONS 通知ENM_PROTECTED发送 EN_PROTECTED 通知ENM_REQUESTRESIZE发送 EN_REQUESTRESIZE 通知ENM_SCROLL发送 EN_HSCROLL 和 EN_VSCROLL 通知ENM_SCROLLEVENTS为鼠标滑轮发送 EN_MSGFILTER 通知。ENM_SELCHANGE发送 EN_SELCHANGE 通知ENM_UPDATE

发送 EN_UPDATE 通知
Rich Edit 2.0 和以后版本: 这个标志值会被忽略,而经常发送 EN_UPDATE 通知。然而如果 RichEdit 3.0 模拟 RichEdit 1.0的话,你必须使用这个标志值来发送 EN_UPDATE 通知

上面的所有通知都被做为 WM_NOTIFY 消息来发送:你必须检查 NMHDR 结构的
code 成员来得到通知消息。譬如,如果你想注册得到鼠标消息(也就是说,
你想提供一给上下文相关的弹出菜单), 你需要象下面这样做:

	invoke SendMessage,hwndRichEdit,EM_SETEVENTMASK,0,ENM_MOUSEEVENTS	.....	.....	WndProc proc hWnd:DWORD, uMsg:DWORD, wParam:DWORD, lParam:DWORD
..... .... .elseif uMsg==WM_NOTIFY push esi mov esi,lParam assume esi:ptr NMHDR .if [esi].code==EN_MSGFILTER .... [ do something here] .... .endif pop esi

例子:

下面的例子是第33篇指南里的 IczEdit 的改进版。
它为程序增加了搜索/替换功能和加速键。同时它处理鼠标消息,点右键时会出现一个弹出菜单。

.386.model flat,stdcalloption casemap:noneinclude \masm32\include\windows.incinclude \masm32\include\user32.incinclude \masm32\include\comdlg32.incinclude \masm32\include\gdi32.incinclude \masm32\include\kernel32.incincludelib \masm32\lib\gdi32.libincludelib \masm32\lib\comdlg32.libincludelib \masm32\lib\user32.libincludelib \masm32\lib\kernel32.libWinMain proto :DWORD,:DWORD,:DWORD,:DWORD.constIDR_MAINMENU                   equ 101IDM_OPEN                      equ  40001IDM_SAVE                       equ 40002IDM_CLOSE                      equ 40003IDM_SAVEAS                     equ 40004IDM_EXIT                       equ 40005IDM_COPY                      equ  40006IDM_CUT                       equ  40007IDM_PASTE                      equ 40008IDM_DELETE                     equ 40009IDM_SELECTALL                  equ 40010IDM_OPTION 			equ 40011IDM_UNDO			equ 40012IDM_REDO			equ 40013IDD_OPTIONDLG                  equ 101IDC_BACKCOLORBOX               equ 1000IDC_TEXTCOLORBOX               equ 1001IDR_MAINACCEL                 equ  105IDD_FINDDLG                    equ 102IDD_GOTODLG                    equ 103IDD_REPLACEDLG                 equ 104IDC_FINDEDIT                  equ  1000IDC_MATCHCASE                  equ 1001IDC_REPLACEEDIT                 equ 1001IDC_WHOLEWORD                  equ 1002IDC_DOWN                       equ 1003IDC_UP                       equ   1004IDC_LINENO                   equ   1005IDM_FIND                       equ 40014IDM_FINDNEXT                  equ  40015IDM_REPLACE                     equ 40016IDM_GOTOLINE                   equ 40017IDM_FINDPREV                  equ  40018RichEditID 			equ 300.dataClassName db "IczEditClass",0AppName  db "IczEdit version 2.0",0RichEditDLL db "riched20.dll",0RichEditClass db "RichEdit20A",0NoRichEdit db "Cannot find riched20.dll",0ASMFilterString 		db "ASM Source code (*.asm)",0,"*.asm",0				db "All Files (*.*)",0,"*.*",0,0OpenFileFail db "Cannot open the file",0WannaSave db "The data in the control is modified. Want to save it?",0FileOpened dd FALSEBackgroundColor dd 0FFFFFFh		; default to whiteTextColor dd 0		; default to blackhSearch dd ?		; handle to the search/replace dialog boxhAccel dd ?.data?hInstance dd ?hRichEdit dd ?hwndRichEdit dd ?FileName db 256 dup(?)AlternateFileName db 256 dup(?)CustomColors dd 16 dup(?)FindBuffer db 256 dup(?)ReplaceBuffer db 256 dup(?)uFlags dd ?findtext FINDTEXTEX <>.codestart:	mov byte ptr [FindBuffer],0	mov byte ptr [ReplaceBuffer],0	invoke GetModuleHandle, NULL	mov    hInstance,eax	invoke LoadLibrary,addr RichEditDLL	.if eax!=0		mov hRichEdit,eax		invoke WinMain, hInstance,0,0, SW_SHOWDEFAULT		invoke FreeLibrary,hRichEdit	.else		invoke MessageBox,0,

上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页 




上一篇:DFCG破解入门第四课

下一篇:CuteFTP最新版V4.2.5build3.7.1官方简体中文版破解
相关文章:
·操作电脑最忌的十八个小动作
·Windows操作系统应用技巧荟萃
·装完操作系统需要做的几件大事
·第一次性生活实际操作指南(图)
·免费申请QQ号的两种途径及具体操作方法
·新手操作电脑最忌讳的十八个动作
·XP操作系统中如何连接红外线?
·新手入门:操作系统重装完全攻略
·《人工少女2》操作指南 - 游戏手册
·如何卸载WindowsXP操作系统
相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot