文章目录
关键词:易语言 MySQL 透明窗体
一、新建易语言Windows窗口程序
1.运行易语言,在打开的窗口中选择“Windows窗口程序”,单击“确定”按钮创建一个空白的窗口程序。
二、连接MySQL数据库
1.创建连接句柄
格式:
句柄名 = 连接mysql(服务器地址,用户名,密码,数据库名,端口号)
代码如下:
b = 连接MySql (“119.28.134.157”, “a1210151733”, “13321267”, “a1210151733”, 3306)
2.测试数据库是否连接成功
(1)在窗口中添加一个透明标签,如下图所示:
说明:
透明标签在“扩展组件1”中,易语言默认只显示“基本组件”,如果要显示“扩展组件1”,需要配置支持库,操作方法是:选择菜单“工具”->“支持库配置”,在打开的窗口中单击左下角的“全选”按钮,然后单击“确定”按钮。
(2)编写判断语句
.版本 2
.如果 (b ≠ 0)
透明标签1.标题 = “连接成功”
.否则
透明标签1.标题 = “连接失败”
说明:
如果句柄b返回的值为0,说明数据库连接失败,不为0则为连接成功。
单击“运行”按钮,运行结果如下图所示:
三、读取数据中的数据
1.在窗口中添加一个透明标签
2.创建MySQL查询语句
MySQL语句 = “select title from test”
3.设置字符编码
执行SQL语句 (b, "set names 'utf8'")
4.执行SQL查询语句
执行SQL语句 (b, MySQL语句)
5.获取查询记录集句柄
取查询值 = 取记录集 (b)
6.获取记录集行数
记录数量 = 取记录集行数 (取查询值)
7.输出获取的内容
.计次循环首 (记录数量, i)
读字段值 (取查询值, “title”, 标题)
透明标签2.标题 = 标题
到下一行 (取查询值)
.计次循环尾 ()
四、制作透明窗体
1.添加DLL命令
.版本 2
.DLL命令 设置透明, 整数型, , "SetLayeredWindowAttributes"
.参数 hwnd, 整数型
.参数 crkey, 整数型
.参数 alpha, 字节型
.参数 dwflags, 整数型
.DLL命令 取窗口风格, 整数型, , "GetWindowLongA"
.参数 hwnd, 整数型
.参数 nindex, 整数型
.DLL命令 设置窗口, 整数型, , "SetWindowLongA"
.参数 hwnd, 整数型
.参数 nindex, 整数型
.参数 dwnewlong, 整数型
2.让启动窗口变透明
_启动窗口.底色 = #品红
设置窗口 (取窗口句柄 (), -20, 位或 (取窗口风格 (取窗口句柄 (), -20), 524288))
设置透明 (取窗口句柄 (), #品红, 200, 1)
3.设置启动窗口属性
(1)设置启动窗口的边框为“无边框”
(2)设置启动窗口的标题及图标
五、程序优化-动态显示数据库中的内容
为了可以让程序动态的显示数据库中的内容,可以将数据库操作部分的代码添加在“时钟”事件中,设置时钟周期为1000(1秒),每隔1秒,程序就会读取数据库中的内容。
注意:
如果始终周期为0,不起任何作用。
六、程序编译
选择菜单栏中的“编译”->“静态编译”命令,在打开的窗口中输入文件名及选择保存位置,单击“保存”按钮。
七、附录
1.视频版链接
2.数据库设计
3.完整程序代码
(1)DLL命令定义表部分
.版本 2
.DLL命令 设置透明, 整数型, , "SetLayeredWindowAttributes"
.参数 hwnd, 整数型
.参数 crkey, 整数型
.参数 alpha, 字节型
.参数 dwflags, 整数型
.DLL命令 取窗口风格, 整数型, , "GetWindowLongA"
.参数 hwnd, 整数型
.参数 nindex, 整数型
.DLL命令 设置窗口, 整数型, , "SetWindowLongA"
.参数 hwnd, 整数型
.参数 nindex, 整数型
.参数 dwnewlong, 整数型
(2)窗口程序集部分
.版本 2
.支持库 mysql
.支持库 iext
.程序集 窗口程序集1
.子程序 _时钟1_周期事件
.局部变量 b, 整数型
.局部变量 MySQL语句, 文本型
.局部变量 取查询值, 整数型
.局部变量 记录数量, 整数型
.局部变量 i, 整数型
.局部变量 标题, 文本型
b = 连接MySql (“119.28.134.157”, “a1210151733”, “13321267”, “a1210151733”, 3306)
.如果 (b ≠ 0)
透明标签1.标题 = “连接成功”
.否则
透明标签1.标题 = “连接失败”
.如果结束
MySQL语句 = “select title from test”
执行SQL语句 (b, “set names 'utf8'”)
执行SQL语句 (b, MySQL语句)
取查询值 = 取记录集 (b)
记录数量 = 取记录集行数 (取查询值)
.计次循环首 (记录数量, i)
读字段值 (取查询值, “title”, 标题)
透明标签2.标题 = 标题
到下一行 (取查询值)
.计次循环尾 ()
.子程序 __启动窗口_创建完毕
_启动窗口.底色 = #品红
设置窗口 (取窗口句柄 (), -20, 位或 (取窗口风格 (取窗口句柄 (), -20), 524288))
设置透明 (取窗口句柄 (), #品红, 200, 1)