菜单操作
系统结构:主要窗口信息,取高低字,类型,状态,取得窗口信息,窗口设置信息,取菜单句柄,取子菜单句柄,将消息传答窗口函数,取条目字串,删除菜单条目,添加菜单项,取条目数量,复选菜单,禁止菜单,取菜单条目信息,菜单条目设置信息,重画菜单,使用符号选中,取系统菜单句柄,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ 主要窗口信息
| |
| |------ _ccc_被选择
| |
| |------ 取高低字
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _Hide_被选择
| |
| |------ __启动窗口_鼠标位置被移动
| |
| |------ _按钮3_被单击
| |
| |------ _按钮4_被单击
| |
| |------ _按钮5_被单击
| |
| |------ _按钮6_被单击
| |
| |------ _按钮7_被单击
| |
| |------ _按钮8_被单击
| |
| |------ 类型
| |
| |------ 状态
| |
| |------ _按钮9_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ 取得窗口信息
| |
| |---[dll]------ 窗口设置信息
| |
| |---[dll]------ 取菜单句柄
| |
| |---[dll]------ 取子菜单句柄
| |
| |---[dll]------ 将消息传答窗口函数
| |
| |---[dll]------ 取条目字串
| |
| |---[dll]------ 删除菜单条目
| |
| |---[dll]------ 添加菜单项
| |
| |---[dll]------ 取条目数量
| |
| |---[dll]------ 复选菜单
| |
| |---[dll]------ 禁止菜单
| |
| |---[dll]------ 取菜单条目信息
| |
| |---[dll]------ 菜单条目设置信息
| |
| |---[dll]------ 重画菜单
| |
| |---[dll]------ 使用符号选中
| |
| |---[dll]------ 取系统菜单句柄
调用的DLL命令:
.DLL命令 取得窗口信息, 整数型, , "GetWindowLongA"
.参数 窗口句柄, 整数型, , 欲为其获取信息的窗口的句柄
.参数 属性, 整数型, , 欲取回的信息,可以是下述任何一个常数:GWL_EXSTYLE:扩展窗口样式GWL_STYLE:窗口样式GWL_WNDPROC:该窗口的窗口函数的地址GWL_HINSTANCE:拥有窗口的实例的句柄GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值GWL_ID:对话框中一个子窗口的标识符GWL_USERDATA:含义由应用程序规定DWL_DLGPROC:这个窗口的对话框函数地址DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值DWL_USER:含义由应用程序规定
.DLL命令 窗口设置信息, 整数型, , "SetWindowLongA", , 在窗口结构中为指定的窗口设置信息,指定数据的前一个值。
.参数 窗口句柄, 整数型, , 欲为其取得信息的窗口的句柄
.参数 属性, 整数型, , 请参考GetWindowLong函数的nIndex参数的说明
.参数 窗口信息, 子程序指针, , 由nIndex指定的窗口信息的新值
.DLL命令 取菜单句柄, 整数型, , "GetMenu", , 依附于指定窗口的一个菜单的句柄(如果有菜单);否则返回零
.参数 窗口句柄, 整数型, , 窗口句柄,这应该是一个窗体句柄。注意可能不是子窗口的句柄
.DLL命令 取子菜单句柄, 整数型, , "GetSubMenu", , 取得一个弹出式菜单的句柄,它位于菜单中指定的位置。位于指定位置的弹出式菜单的句柄(如果有的话);否则返回零
.参数 菜单的句柄, 整数型, , 菜单的句柄
.参数 位置, 整数型, , 条目在菜单中的位置。第一个条目的编号为0
.DLL命令 将消息传答窗口函数, 整数型, , "CallWindowProcA", , 将消息传答窗口函数
.参数 lpPrevWndFunc, 整数型
.参数 窗口句柄, 整数型
.参数 Msg, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 取条目字串, 整数型, , "GetMenuStringA", , 取得指定菜单条目的字串,在lpString中返回的字串的长度(不包括空中止字符)。零意味着出错
.参数 菜单句柄, 整数型
.参数 条目位置, 整数型, , 欲接收的菜单条目的标识符。如果在wFlags参数中设置了MF_BYCOMMAND标志,这个参数就用于指定要改变的菜单条目的命令ID。如果设置的是MF_BYPOSITION标志,这个参数就用于指定条目在菜单中的位置(第一个条目的位置为0)
.参数 缓冲区, 文本型, , 指定一个预先定义好的字串缓冲区,以便为菜单条目装载字串
.参数 缓冲区长度, 整数型, , 载入lp缓冲区中的最大字符数量+1
.参数 标志, 整数型, , 常数MF_BYCOMMAND或MF_BYPOSITION,取决于wID参数的设置
.DLL命令 删除菜单条目, 整数型, , "DeleteMenu", , 删除指定的菜单条目(在vb里使用:强烈建议用vb菜单的visible属性从菜单中删除条目。如使用这个函数,会造成指定菜单其他菜单条目的visible属性错误的影响菜单条目)。如条目连接了一个弹出式菜单,就会清除弹出式菜单。用RemoveMenu函数清除一个弹出式菜单条目,同时不影响整个弹出式菜单。
.参数 菜单句柄, 整数型
.参数 标志索引, 整数型, , 欲删除菜单条目的标识符。如在wFlags中设置了MF_BYCOMMAND标志,这个参数就代表要改变的菜单条目的命令ID。如设置了MF_BYPOSITION标志,这个参数就代表条目在菜单中的位置(头一个条目肯定是零)
.参数 标识符, 整数型, , MF_BYPOSITION或MF_BYCOMMAND,具体由nPosition参数决定
.DLL命令 添加菜单项, 整数型, , "AppendMenuA", , 在指定的菜单里添加一个菜单项
.参数 菜单句柄, 整数型, , 菜单句柄
.参数 菜单常数标志, 整数型, , 参考ModifyMenu函数中的菜单常数标志定义表,其中列出了允许使用的所有常数
.参数 新菜单条目ID, 整数型, , 指定菜单条目的新命令ID。如果在wFlags参数中指定了MF_POPUP字段,那么这应该是指向一个弹出式菜单的句柄
.参数 标志值, 文本型, , (相应的vb声明见注解),如果在wFlags参数中指定了MF_STRING标志,这就代表在菜单中设置的字串。如设置了MF_BITMAP标志,这就代表一个Long型变量,其中包含了一个位图句柄。如设置了MF_OWNERDRAW,这个值就会包括在DRAWITEMSTRUCT和MEASUREITEMSTRUCT结构中,在条目需要重画的时候由windows发送出去
.DLL命令 取条目数量, 整数型, , "GetMenuItemCount", , 返回菜单中条目(菜单项)的数量,菜单中的条目数量;-1意味着出错。会设置GetLastError。
.参数 菜单句柄, 整数型, , 目标菜单的句柄
.DLL命令 复选菜单, 整数型, , "CheckMenuItem", , 复选或撤消复选指定的菜单条目,如条目的前一个状态是“复选”,就返回MF_CHECKED,如果是“未复选”,就返回MF_UNCHECKED。如指定的菜单条目不存在就返回-1。
.参数 菜单句柄, 整数型
.参数 菜单标识, 整数型, , 欲复选或撤消复选的菜单条目的标识符。如果在wCheck中指定了MF_BYCOMMAND标志,这个参数就用于指定要改变的菜单条目的命令ID。如果设置了MF_BYPOSITION标志,这个参数就用于指定条目在菜单中的位置(第一个条目的位置是0)
.参数 参数, 整数型, , 参考ModifyMenu函数中的菜单常数标志定义表,其中列出了允许使用的所有常数。针对这个函数,只能指定下述常数:MF_BYCOMMAND,MF_BYPOSITION,MF_CHECKED以及MF_UNCHECKED
.DLL命令 禁止菜单, 整数型, , "EnableMenuItem", , 允许或禁止指定的菜单条目,如指定的菜单条目依附了一个弹出式菜单,那么整个弹出式菜单都会受到影响。
.参数 菜单句柄, 整数型
.参数 标识符, 整数型, , 欲允许或禁止的一个菜单条目的标识符。如果在wEnable参数中设置了MF_BYCOMMAND标志,这个参数就代表欲改变菜单条目的命令ID。如设置的是MF_BYPOSITION,则这个参数代表菜单条目在菜单中的位置(第一个条目肯定是零)
.参数 常数标志, 整数型, , 参考ModifyMenu函数中的菜单常数标志定义表,其中列出了允许使用的所有常数。对于这个函数,只能指定下述常数:MF_BYCOMMAND,MF_BYPOSITION,MF_ENABLED,MF_DISABLED以及MF_GRAYED
.DLL命令 取菜单条目信息, 整数型, , "GetMenuItemInfoA", , 用一个MENUITEMINFO结构取得(接收)与一个菜单条目有关的特定信息
.参数 菜单句柄, 整数型
.参数 位置, 整数型, , 菜单条目的菜单ID或位置
.参数 查找方式, 逻辑型, , 为假表示uItem是菜单ID,真表示uItem是位置。
.参数 菜单信息, 菜单条目结构, , MENUITEMINFO,这个结构用于装载请求的信息。
.DLL命令 菜单条目设置信息, 整数型, , "SetMenuItemInfoA", , 为一个菜单条目设置指定的信息,具体信息保存于MENUITEMINFO结构中。
.参数 菜单句柄, 整数型
.参数 位置, 整数型, , 菜单条目的菜单ID或位置
.参数 查找方式, 逻辑型, , 为假表示uItem是菜单ID,真表示uItem是位置
.参数 菜单信息, 菜单条目结构, , MENUITEMINFO,用于设置目标菜单条目的特征。
.DLL命令 重画菜单, 整数型, , "DrawMenuBar", , 为指定的窗口重画菜单。用api函数改变一个窗口菜单的内容时,就要用到这个函数。
.参数 窗口句柄, 整数型, , 要重画菜单栏的窗口的句柄
.DLL命令 使用符号选中, 整数型, , "CheckMenuRadioItem", , 指定一个菜单条目被复选成“单选”项目。与单选钮相似,一个特定的组中只能有一个项目被选中。这个组别既可按位置定义,也可按菜单ID定义。复选的项目会显示一个圆形的样式复选符号(●),而不是一个标准的复选符号(√)
.参数 菜单句柄, 整数型
.参数 起始位置, 整数型, , 组内第一个位置或菜单ID
.参数 结束位置, 整数型, , 组内最后一个位置或菜单ID
.参数 选中位置, 整数型, , 欲复选的位置或菜单ID
.参数 参数, 整数型, , 下述标志之一 :如un1,un2,un3引用菜单条目的位置(第一个肯定在位置0处),就设为MF_BYPOSITION;如它们引用的是菜单ID,则设为MF_BYCOMMAND
.DLL命令 取系统菜单句柄, 整数型, , "GetSystemMenu", , 取得指定窗口的系统菜单的句柄。如执行成功,返回系统菜单的句柄;零意味着出错。如bRevert设为假,也会返回零(简单的恢复原始的系统菜单)
.参数 窗口句柄, 整数型
.参数 回复, 逻辑型, , 如设为假,表示接收原始的系统菜单。
易语言糊模查找窗口标题并弹出源码,枚举系统所有窗口,GetWindow,GetWindowText,GetWindowTextLength,FindWindow,ShowWindow...
易语言其它简易换肤13种源码,配色...
易语言简单的验证码识别加界面源码,主识别程序,是否符合,说明,程序初始化,显示验证码,分割图片,对应识别,替换杂色,全部替换色,除指定色外全部除去,读入图片...
易语言笔划输入法一整套文件源码,子程序1,数清,清,按钮1,按钮2,按钮3,按钮4,按钮5,注,投递文本,解码火星文,计1,笔画字刷新,操作,字刷新,计,填,GetGUIThreadInfo,ClientToScreen,屏幕截图,拖动屏幕...
易语言窗口渐变源码,CreateSolidBrush,DeleteObject,FillRect,GetDC...
易语言窗体拉动源码,设置系统菜单,API_设置窗口区域,创建椭圆区域,取窗口风格,置窗口风格...
易语言突破灰色按钮和水波特效,突破灰色按钮和水波特效源码,装载图片,水周期,水波特效,装载图片_,接收装载图返回的整数,水周期_,窗口绘图,水波特效_,突破灰色按钮,激活按钮,取得当...
易语言突破灰色按钮和水波特效源码,装载图片,水周期,水波特效,突破灰色按钮,激活按钮,取得当前活动窗口句柄,枚举所有子窗体,是否活动窗口,激活窗口...
易语言科大讯飞语音库调用例程源码,刷新窗口,取错误码,初始化,反初始化,连接语音服务器,断开语音服务器,置合成参数,取合成参数,字符串合成到音频文件,文本文件合成到音频文件,播放...