新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于Qt的嵌入式Linux通訊簿程序設計

        基于Qt的嵌入式Linux通訊簿程序設計

        作者: 時間:2018-08-28 來源:網(wǎng)絡 收藏

        本文引用地址:http://www.104case.com/article/201808/387883.htm

        新建聯(lián)系人信息包括姓名、電話、郵件及地址,在函數(shù)中定義一個字符串類型函數(shù):

        ST ring lSQL ST ring

        并給lSQL ST ring 賦值:

        lSQLSt ring = Create Table + Const ∶∶DBTBL _ADDRESS + ( +

        Const∶∶DBCOL _NAME + , + Const ∶∶DBCOL _TEL EPHONE + , +

        Const∶∶DBCOL _ EMAIL + , + Const ∶∶DBCOL _ADDRESS + , + ) ;

        編輯聯(lián)系人信息時,定義成員函數(shù):

        void AddressBook∶∶edit Slot ()

        分別在姓名、電話、郵件及地址欄中輸入信息:

        ent ry - > setName (lRows[0 ]) ; / / 在第1 行0 列輸入name

        ent ry - > set TelePhone (lRows[ 1 ]) ;/ / 在第1 行1 列輸入telephone

        ent ry - > set Email (lRows[2 ]) ; / / 在第1 行2 列輸入email

        ent ry - > setAddress (lRows[3 ]) ; / / 在第1 行3 列輸入address

        刪除聯(lián)系人信息時,定義成員函數(shù):

        void AddressBook∶∶delSlot ()

        選擇要刪除的聯(lián)系人,從數(shù)據(jù)庫刪除該聯(lián)系人信息:

        ST ring lSQLSt ring ;

        lSQLSt ring = Delete f rom + Const ∶∶DBTBL _ADDRESS + where +

        Const∶∶DBCOL_NAME + = + aName ;

        查詢聯(lián)系人時,定義成員函數(shù):

        void AddressBook∶∶searchSlot ()

        在查詢框中輸入聯(lián)系人的姓名、電話、郵件及地址信息之一,選擇相應的查詢方式:

        ST ring lSQLSt ring = Select + Const ∶∶DBCOL _NAME + ,

        + Const ∶∶DBCOL _ TEL EPHONE + , + Const ∶∶DBCOL_EMAIL + ,

        + Const∶∶DBCOL _ADDRESS + f rom + Const ∶∶DBTBL_ADDRESS

        + where + Const ∶∶DBCOL _ NAME + = +aName ;

        受篇幅限制,AddressBook1 h , New1 h ,New1cpp ,SQL1cpp ,SQL1 h 代碼不再給出。

        1.4 編寫主函數(shù)

        每一個Qt 應用程序都包含一個主函數(shù)main1cpp . 主函數(shù)是應用程序執(zhí)行的入口點。以下是AddressBook 的主函數(shù)文件main1cpp 的關鍵代碼:

        int main (int argc , char 3 3argv)

        {

        QApplication AddressBook ( argc , argv ) ;/ / 創(chuàng)建Qapplication 對象,管理整個程序資源

        AddressBook 3 AddressBook = new AddressBook(log) ;/ / 創(chuàng)建程序主窗口

        app . setMainWidget ( mainWin ) ;/ / 設置mainWin 部件為程序的主部件

        mainWin - > show() ;/ / 使mainWin 部件可視

        return AddressBook. exec () ;/ / 把程序控制權交還給Qt

        }

        1.5 編輯工程文件

        代碼編寫完成后,需要把文件AddressBook1cpp , AddressBook1 h , New1 h ,New1cpp , SQL1 h 及SQL1cpp 添加到工程文件AddressBook1pro 中:

        HEADERS = AddressBook. h New. h SQL . h

        SOURCES = AddressBook. cpp New. cpp SQL.cpp main. cpp

        1.6 生成可執(zhí)行文件

        編譯器是根據(jù)Makefile 文件內(nèi)容來進行編譯的,所以需要生成一個Makefile 文件1Qt 提供的qmake 工具可以從一個工程文件( . pro 文件) 中產(chǎn)生Makefile 文件,然后再使用make 命令對整個工程進行編譯鏈接:

        生成的二進制文件AddressBook 就是可以直接運行的可執(zhí)行文件。程序運行結果如下面圖示,圖4是按照姓名(Name) 查詢聯(lián)系人Mat rix 的信息,圖5是編輯新聯(lián)系人Mat rix 的信息。

        圖4 按姓名查詢聯(lián)系人

        圖5 編輯新聯(lián)系人信息

        程序編譯成功后可先在Virt ual f ramebuffer(虛擬緩沖幀) 中運行,確證無誤后再交叉編譯在開發(fā)板上運行。交叉編譯時要確保$Q TEDIR/ lib 下有需要在開發(fā)板上運行的庫文件。

        2 結論

        所設計的通訊簿程序具有對聯(lián)系人的姓名、電話、郵件地址及通訊地址等信息的記錄、新建、編輯、刪除、查詢等功能,且可按照姓名、電話、郵件地址及通訊地址4 種查詢方式來檢索聯(lián)系人。程序的設計很好地體現(xiàn)了Qt 的信號與槽機制,并且使用QtDesigner 可方便地進行可視化程序界面設計,通過使用Qt 中豐富的類函數(shù),利用其面向對象和模塊化的特征,避免了繁瑣的X 編程。通訊簿程序的設計對在Linux 下使用Qt 開發(fā)其他GUI 程序具有一定的指導意義。


        上一頁 1 2 下一頁

        關鍵詞: 嵌入式

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 丹东市| 香格里拉县| 靖宇县| 湖北省| 长岛县| 元朗区| 明水县| 崇文区| 西乌珠穆沁旗| 历史| 康保县| 西丰县| 乾安县| 佳木斯市| 夏津县| 萍乡市| 长治县| 搜索| 酉阳| 绿春县| 西昌市| 吉水县| 车致| 玉林市| 阿鲁科尔沁旗| 庆城县| 偃师市| 台东县| 信丰县| 桓仁| 禹城市| 延长县| 成安县| 陆良县| 宜兰县| 淳安县| 进贤县| 鄂州市| 岳阳市| 夏邑县| 蓬安县|