基于廣州創龍TL437xF-EVM,使用最經典的HelloWorld入門程序,帶領大家體驗一下Qt界面開發流程,希望可以幫助到大家。廣州創龍TL437xF-EVM是基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA處理器,圖片如下:
下面進入正題: 此例程源碼位于光盤"Demo\qt\helloworld\helloworld"目錄下。 可執行Qt程序鏡像在光盤的路徑為: "Demo\qt\helloworld\build-helloworld-AM437x-Debug\helloworld" 可直接將其拷貝到開發板中運行。1. 新建工程 在菜單欄點擊"File->NewFileorProject",在彈出的對話框中選擇"Application ->Qt WidgetsApplication",再點擊Choose,如下圖所示: 在彈出的對話框的Name欄輸入工程名稱:helloworld,在"Create in"欄輸入或者通過Browse選擇工程存放目錄,例如:"/home/tronlong/AM437x/qt"。點擊Next,彈出如下界面: 點擊Next,彈出如下界面: 在彈出的界面中,點擊"Baseclass"選項下拉選擇QWidget。"Base class"下拉框中一共有QWidget、QMainWindow和QDialog三個選項。QWidget類是所有用戶界面對象的基類,QMainWindow類提供一個有菜單條、錨接窗口(例如工具條)和一個狀態條的主應用程序窗口,QDialog類是對話框窗口的基類。QMainWindow和QDialog都是繼承自QWidget。 點擊Next,彈出如下界面: 點擊Finish完成新建工程,彈出基本工程框架,如下圖所示: n 窗口大小設置 7寸屏的不能超過800*480,4.3寸屏不能超過480*272。請根據屏幕實際規格設置。雙擊"Forms->widget.ui"打開圖形界面,如下圖所示: 在右下角的Property屬性窗口中,可以看到有geometry選項,點開前面 標志,可以看到有Width和Height的字段,雙擊輸入顯示尺寸,例如:Width:480,Height:272,如下圖所示: n 標題設置 在將屬性窗口的菜單條往下拖拉,在windowTitle字段,雙擊輸入想要的窗口標題,這里的窗口標題命名為"HelloWorld",如下圖: n 添加控件 添加Push Button(按鈕)控件:鼠標拖拽Buttons下的Push Button控件移動到畫布中,松開鼠標就放置了一個Push Button控件,用于點擊退出程序。其他的控件放置方法一樣。 添加Label(文本標簽):鼠標拖拽Display Widgets下的Label控件移動到畫布中,松開鼠標就放置了一個Label控件,用于顯示"Hello World!"。 演示如何編輯代碼,我們選用了最簡單的示例代碼—Close。雙擊TextLabel,輸入“HelloWorld!”,雙擊PushButton,輸入”Close”。右擊界面上的Close按鈕,點擊"Go to slot…",如下圖所示: 在彈出的"Goto slot"對話框中選擇"clicked()",然后點擊OK確認,如下圖所示: 彈出代碼編輯框,在"voidWidget:n_pushButton_clicked()"函數內添加指令"close();",如下圖所示: 點擊所有未保存的代碼文件,按"Ctrl+S"就可以保存了。 4.在PC端運行HelloWorld Qt程序點擊左下角的編譯按鈕 ,在如下路徑會生成PC端的Qt程序鏡像helloworld: /home/tronlong/AM437x/qt/build-helloworld-Desktop_Qt_5_6_2_GCC_64bit-Debug 點擊左下角的運行按鈕 ,即可在PC端看到界面運行效果,如下圖所示: 點擊"Projects-> AM437x",等待運行圖標變為綠色后,點擊 進行ARM端的編譯,編譯后,ARM端Qt程序鏡像路徑為: /home/tronlong/AM437x/qt/build-helloworld-AM437x-Debug/helloworld 如下圖所示: 將交叉編譯產生的Qt程序鏡像拷貝到開發板文件系統任意路徑。啟動開發板,在Qt程序鏡像所在目錄,執行如下命令運行Qt程序: Target# /etc/init.d/matrix-gui-2.0 stop //開發板已經設置上電自動執行此程序,先終止 Target# ./helloworld -plugin Tslib “-plugin Tslib”指使用以插件形式運行Qt觸摸庫。 可以發現Qt界面為全屏,Qt界面尺寸設置沒有生效,原因是系統默認使用GPU基于OPENGL ES進行圖層渲染,圖形效果更佳。如果期望Qt界面尺寸設置生效,并可以進行界面縮放,而對圖層渲染效果要求不高,可以增加”-platform linuxfb”參數,運行命令如下: Target# /etc/init.d/matrix-gui-2.0 stop Target# ./helloworld -platform linuxfb -pluginTslib 更多參數說明信息,請查看參考鏈接:http://doc.qt.io/qt-5/embedded-linux.html。 結束~ |