易语言 动态创建菜单!

.DLL命令 _取菜单句柄, 整数型, "user32", "GetMenu", , 取得窗口中一个菜单的句柄 依附于指定窗口的一个菜单的句柄(如果有菜单);否则返回零

.参数 窗口句柄, 整数型, , 窗口句柄。对于vb,这应该是一个窗体句柄。注意可能不是子窗口的句柄;

.DLL命令 _创建菜单, 整数型, "user32", "CreatePopupMenu", , 创建一个空的菜单,成功返回菜单句柄,失败返回0

.DLL命令 _添加菜单项, 整数型, , "AppendMenuA", , 在指定的菜单里添加一个菜单项 非零表示成功,零表示失败。会设置GetLastError

.参数 菜单句柄, 整数型, , 菜单句柄

.参数 菜单常数标志, 整数型, , 参考ModifyMenu函数中的菜单常数标志定义表,其中列出了允许使用的所有常数

.参数 新菜单条目ID, 整数型, , 指定菜单条目的新命令ID。如果在wFlags参数中指定了MF_POPUP字段,那么这应该是指向一个弹出式菜单的句柄

.参数 标志值, 文本型, , (相应的vb声明见注解),如果在wFlags参数中指定了MF_STRING标志,这就代表在菜单中设置的字串。如设置了MF_BITMAP标志,这就代表一个Long型变量,其中包含了一个位图句柄。如设置了MF_OWNERDRAW,这个值就会包括在DRAWITEMSTRUCT和MEASUREITEMSTRUCT结构中,在条目需要重画的时候由windows发送出去

.DLL命令 SetWindowLong, 整数型, , "SetWindowLongA"

.参数 hwnd, 整数型

.参数 nindex, 整数型

.参数 hnew, 整数型

.DLL命令 CallWindowProc, 整数型, "user32", "CallWindowProcA", , 将消息传答窗口函数

.参数 lpPrevWndFunc, 整数型

.参数 hwnd, 整数型

.参数 msg, 整数型

.参数 wParam, 整数型

.参数 lParam, 整数型

.DLL命令 GetWindowLong, 整数型, "user32", "GetWindowLongA", , 从指定窗口的结构中取得信息 由nIndex决定。零表示出错。会设置GetLastError

.参数 窗口句柄, 整数型, , 欲为其获取信息的窗口的句柄

.参数 属性, 整数型, , 欲取回的信息,可以是下述任何一个常数:;GWL_EXSTYLE:扩展窗口样式;GWL_STYLE:窗口样式;GWL_WNDPROC:该窗口的窗口函数的地址;GWL_HINSTANCE:拥有窗口的实例的句柄;GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值;GWL_ID:对话框中一个子窗口的标识符;GWL_USERDATA:含义由应用程序规定;DWL_DLGPROC:这个窗口的对话框函数地址;DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值;DWL_USER:含义由应用程序规定;

.DLL命令 GetMenuString, 整数型, "user32", "GetMenuStringA"

.参数 hMenu, 整数型

.参数 wIDItem, 整数型

.参数 lpString, 文本型

.参数 nMaxCount, 整数型

.参数 wFlag, 整数型