平面几何图形画图软件模块

易语言 2020-07-19 18:31:45

平面几何图形画图软件模块

易语言例程还使用到易语言数值计算支持库,XML解析支持库,应用接口支持库。

.子程序 窗口消息处理, 整数型
.参数 hWnd, 整数型, , 接收消息的窗口句柄
.参数 uMsg, 整数型, , 要发送的消息值
.参数 wParam, 整数型, , 消息附带的第一个参数wParam的高4位不用,低4位表示组合键的使用状态。第1位为“1”表示鼠标左键按下,第2位为“1”表示鼠标右键按下,第3位为“1”表示Shift键按下,第4位为“1”表示Ctrl键按下,这4种状态可以组合使用。例如,鼠标左右键同时按下,wParam为3;鼠标左右键和Shift、Ctrl键全部按下则wParam为F。
.参数 lParam, 整数型, , 消息附带的第二个参数,lParam副消息存放的是鼠标的座标位置,字节的低4位为x座标,高4位为y座标。用位操作符&很容易就取到鼠标的x和y座标,VC也提供了宏HIWORD()和LOWORD()。

返回 (CallWindowProcA_将消息传答窗口函数_ (_接口.菜单.窗口消息处理 (uMsg, wParam, lParam), hWnd, uMsg, wParam, lParam))

.子程序 创建提示
.参数 窗口单元句柄, 整数型
.参数 是否汽泡, 逻辑型, , 假-默认;真-气泡
.参数 是否使用图标, 逻辑型
.参数 图标样式, 整数型, 可空, 0:无图标,1:信息,2:警告,3:错误
.参数 图标标题文本, 文本型, 可空
.参数 方向, 逻辑型, , 假-标准(下且居右),汽泡(上和居右);真-标准,汽泡(下且居中)
.参数 背景颜色, 整数型, 可空
.参数 边框文本颜色, 整数型, 可空
.参数 提示文本, 文本型, , 如果文本中加换行符,则可以实现多行提示。
.局部变量 提示窗体句柄, 整数型
.局部变量 矩形区域, api矩形
.局部变量 信息, 提示框信息
.局部变量 UID, 整数型
.局部变量 图标, 图标类型
.局部变量 标准与汽球, 整数型

.如果 (是否汽泡 = 假)
标准与汽球 = 位或 (#TTS_ALWAYSTIP, #TTS_NOPREFIX)
.否则
标准与汽球 = 位或 (标准与汽球, #TTS_BALLOON)
.如果结束
提示窗体句柄 = CreateWindowExA_创建窗口_ (#WS_EX_TOPMOST, #TOOLTIPS_CLASSA, “”, 标准与汽球, #CW_USEDEFAULT, #CW_USEDEFAULT, #CW_USEDEFAULT, #CW_USEDEFAULT, 窗口单元句柄, 0, 4194304, 0)
SetWindowPos_设置窗口位置_ (提示窗体句柄, #HWND_TOPMOST, 0, 0, 0, 0, 位或 (#SWP_NOMOVE, #SWP_NOSIZE, #SWP_NOACTIVATE))
GetClientRect_取客户区矩形_ (窗口单元句柄, 矩形区域)
信息.结构大小cbSize = 44
.如果 (方向 = 真)
信息.显示标志uFlags = #TTF_CENTERTIP + #TTF_SUBCLASS
.否则
.如果 (方向 = 假)
信息.显示标志uFlags = #TTF_SUBCLASS
.否则

.如果结束

.如果结束
信息.窗口句柄hwnd = 窗口单元句柄
信息.程序句柄hinst = 4194304
信息.控件标识uid = UID
信息.文本lpszText = 提示文本
信息.客户区矩形RECT [1] = 矩形区域.左
信息.客户区矩形RECT [2] = 矩形区域.顶
信息.客户区矩形RECT [3] = 矩形区域.右
信息.客户区矩形RECT [4] = 矩形区域.底
.如果真 (背景颜色 = 0)
背景颜色 = 12582911
.如果真结束
.如果真 (边框文本颜色 = 0)
边框文本颜色 = #黑色
.如果真结束
SendMessageA_发送窗体信息_ (提示窗体句柄, #TTM_ADDTOOLA, 0, 信息)
.如果真 (是否使用图标 = 真 且 图标样式 ≠ 0)
SendMessageA_发送图标信息_ (提示窗体句柄, #TTM_SETTITLE, 多项选择 (图标样式 + 1, 0, 1, 2, 3), 图标标题文本 + “ ”)
.如果真结束
SendMessageA_发送颜色信息_ (提示窗体句柄, #TTM_SETMAXTIPWIDTH, 0, 取文本长度 (提示文本) × 6)
SendMessageA_发送颜色信息_ (提示窗体句柄, #TTM_SETTIPBKCOLOR, 背景颜色, 0)
SendMessageA_发送颜色信息_ (提示窗体句柄, #TTM_SETTIPTEXTCOLOR, 边框文本颜色, 0)