文章目錄
關鍵詞:易語言 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)