• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于QtCreator的嵌入式GUI程序設(shè)計(jì)和移植

    2021-08-06 11:13:10
    科教導(dǎo)刊·電子版 2021年17期
    關(guān)鍵詞:用戶名控件對(duì)話框

    戴 軍

    (江蘇開放大學(xué)江蘇城市職業(yè)學(xué)院 江蘇·南京 210000)

    我們常用QtCreator來設(shè)計(jì)嵌入式GUI并可以仿真調(diào)試,如果調(diào)試通過就可以將GUI移植到目標(biāo)機(jī)中使用。我們提出假設(shè)即通過Ubuntu中QtCreator設(shè)計(jì)GUI并通過RHEL編譯移植到S5pv210目標(biāo)機(jī)中運(yùn)行,可通過以下實(shí)驗(yàn)驗(yàn)證其可行性。

    1 基于QtCreator的嵌入式GUI程序設(shè)計(jì)

    運(yùn)行QtCreator-新建文件或工程,選擇Qt控件項(xiàng)目-QtGui應(yīng)用,設(shè)置項(xiàng)目名稱為mainWidget,設(shè)置類名為Widget,基類為Qwidget,頭文件為widget.h,源文件為widget.cpp,界面文件為widget.ui,接著新建Qt設(shè)計(jì)師界面類,選擇界面模板為Dialog without Buttons,設(shè)置類名為loginDlg,頭文件為logindlg.h,源文件為logindlg.cpp,界面文件為logindlg.ui。

    在界面文件logindlg.ui中放置“用戶名”和“登錄密碼”兩個(gè)Text Edit控件,在“用戶名”和“登錄密碼”后面分別放置兩個(gè)LineEdit控件,并將其objectName分別命名為usrLineEdit和pwdLineEdit,放置“登錄”和“退出”兩個(gè)Push Button控件,并將其objectName分別命名為loginBtn和exitBtn。單擊菜單“編輯”-“編輯信號(hào)/槽”或者按下快捷鍵F4,鼠標(biāo)左鍵按住并拖動(dòng)logindlg.ui界面中的退出按鈕到空白處并釋放,在配置連接設(shè)置對(duì)話框中將loginDlg(QDialog)選擇為close(),然后單擊確定退出設(shè)置。單擊菜單“編輯”-“編輯控件”或者按下快捷鍵F3回到編輯控件狀態(tài),鼠標(biāo)右鍵點(diǎn)擊ogindlg.ui界面中的登錄按鈕在彈出的菜單中選擇“轉(zhuǎn)到槽”,在轉(zhuǎn)到槽設(shè)置對(duì)話框的選擇信號(hào)中選擇clicked()并點(diǎn)擊確定進(jìn)入click事件的槽函數(shù),在其中寫入代碼accept();為使密碼顯示為黑點(diǎn)以及移除字符串開頭和結(jié)尾的空白字符,判斷用戶名和密碼輸入是否正確,同時(shí)保證輸入錯(cuò)誤的情況下,重新進(jìn)入登錄對(duì)話框并清空用戶名和密碼且光標(biāo)自動(dòng)跳轉(zhuǎn)到用戶名輸入框,可以將logindlg.cpp代碼修改如下:

    如圖1所示,執(zhí)行以上程序,就可以實(shí)現(xiàn)輸入用戶名和密碼正確的情況下,點(diǎn)擊登錄按鈕就可以進(jìn)入主窗口并顯示qrs.png的圖片,如果輸入錯(cuò)誤,則彈出出錯(cuò)提示對(duì)話框。點(diǎn)擊退出按鈕退出程序。

    圖1:mainWidget調(diào)試運(yùn)行界面

    2 基于RHEL嵌入式GUI程序的編譯和移植

    如圖2所示,將Ubuntu中的mainWidget工程文件夾拷貝至RHEL根目錄下,將RHEL中的qmake程序拷貝至mainWidget工程文件目錄中,運(yùn)行/mainWidget/qmake指令生成makefile文件,運(yùn)行make編譯生成可執(zhí)行目標(biāo)文件mainWidget。

    圖2:mainWidget編譯

    編寫設(shè)置環(huán)境變量以及運(yùn)行 mainWidget的腳本文件run.sh,腳本文件run.sh程序如下:

    將可執(zhí)行目標(biāo)文件mainWidget、文件目錄img和run.sh打包壓縮下載到S5pv210實(shí)驗(yàn)箱中并解壓運(yùn)行run.sh,效果如圖3所示。

    圖3:mainWidget移植和運(yùn)行效果

    3 小結(jié)

    通過基于 QtCreator的嵌入式 GUI程序設(shè)計(jì)以及基于RHEL嵌入式 GUI程序編譯和移植,可以看到此方案對(duì)于S5pv210的應(yīng)用是完全可行的,可為類似的GUI設(shè)計(jì)及移植提供必要的啟示。之所以使用QtCreator來進(jìn)行嵌入式GUI設(shè)計(jì),是考慮到QtCreator集成了特定于Qt的功能,對(duì)Qt類結(jié)構(gòu)可一目了然,集成了Qt Designer可視化布局和格式構(gòu)建器,只需要單擊一下就可以生成和運(yùn)行Qt項(xiàng)目。

    猜你喜歡
    用戶名控件對(duì)話框
    《護(hù)士進(jìn)修雜志》投稿程序
    正?;謴?fù)虛擬機(jī)
    Bootlace Worms’Secret etc.
    關(guān)于.net控件數(shù)組的探討
    軟件(2018年7期)2018-08-13 09:44:42
    機(jī)智的快遞員
    快速抓取對(duì)話框中的完整信息
    電腦迷(2012年22期)2012-04-29 20:30:54
    就這樣玩會(huì)VBA中常見的自定義控件
    電腦迷(2012年24期)2012-04-29 00:44:03
    ESET NOD32專家答疑等
    輕輕松松……在線制作電子書
    干掉不斷彈出的對(duì)話框
    湖口县| 盘山县| 略阳县| 望江县| 白银市| 石景山区| 辽阳县| 云和县| 华蓥市| 新乡县| 剑川县| 江西省| 陆良县| 宜兰县| 特克斯县| 阜康市| 洪雅县| 简阳市| 稷山县| 深水埗区| 南部县| 桐庐县| 南皮县| 房产| 丹寨县| 名山县| 新营市| 自贡市| 白山市| 湟中县| 政和县| 甘肃省| 马公市| 乌兰察布市| 大安市| 涞源县| 龙门县| 余姚市| 恩施市| 达日县| 安图县|