0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TouchGFX代碼框架以及如何添加用戶代碼

嵌入式程序員 ? 來源:嵌入式程序猿 ? 作者:嵌入式程序猿 ? 2021-01-18 11:28 ? 次閱讀

1. 摘要

本文檔主要介紹,TouchGFX代碼框架以及如何添加用戶代碼。

2. 準(zhǔn)備工作

可以正常運(yùn)行的TouchGFX工程

3. 代碼結(jié)構(gòu)

TouchGFX的框架是基于MVP模型設(shè)計(jì),代碼結(jié)構(gòu)主要分為三大類,GUI引擎,生成代碼,用戶代碼,首先先看什么是MVP,即Model, View, Presenter。下圖可以很明顯清除的看到每一部分負(fù)責(zé)什么,干什么工作,Presenter是model和View之間的橋梁,View負(fù)責(zé)顯示,Model負(fù)責(zé)交互,這三大類撐起了TouchGFX的天空,你可以再里面任意翱翔。

76ea3716-58f7-11eb-8b86-12bb97331649.png

77ec4b90-58f7-11eb-8b86-12bb97331649.png

清除了MVP結(jié)構(gòu)后,對(duì)代碼結(jié)構(gòu)的理解和應(yīng)用的開發(fā)有很大幫助,TouchGFX Design生成的代碼位于工程的generated/gui_generated

7830575e-58f7-11eb-8b86-12bb97331649.png

而用戶代碼位于gui文件夾下,gui文件夾下的代碼自己可以編輯,自己實(shí)現(xiàn)的代碼也是添加在這里。

7871950c-58f7-11eb-8b86-12bb97331649.png

例如上次我們給大家推送的電阻屏校準(zhǔn)就是在用戶代碼側(cè),通過手寫代碼來實(shí)現(xiàn)。理解了代碼結(jié)構(gòu),在加上熟悉API就可以很方便的開發(fā)GUI界面了,不管是用Designer,還是自己動(dòng)手寫,如我們校準(zhǔn)觸摸屏的時(shí)候,需要先畫一個(gè)小圓,自己動(dòng)手畫一個(gè)圓。定義變量

78abd5c8-58f7-11eb-8b86-12bb97331649.png

在cpp文件中添加代碼

793fea6a-58f7-11eb-8b86-12bb97331649.png

這樣就實(shí)現(xiàn)了在屏幕左上角畫了一個(gè)半徑為10的實(shí)心圓。如要畫空心圓,將線寬不要設(shè)置為0,另外注意畫空心圓時(shí)候,半徑必須減去線寬。同理就可以實(shí)現(xiàn)手動(dòng)繪制2D圖形。

責(zé)任編輯:xj

原文標(biāo)題:TouchGFX中生成代碼與用戶代碼

文章出處:【微信公眾號(hào):嵌入式程序猿】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4694

    瀏覽量

    68078
  • 生成
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    13592
  • TouchGFX
    +關(guān)注

    關(guān)注

    1

    文章

    42

    瀏覽量

    13178

原文標(biāo)題:TouchGFX中生成代碼與用戶代碼

文章出處:【微信號(hào):InterruptISR,微信公眾號(hào):嵌入式程序員】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    國內(nèi)低代碼平臺(tái)推薦--萬界星空科技低代碼平臺(tái)

    代碼平臺(tái)是一種應(yīng)用程序,它為編程提供圖形用戶界面,從而以極快的速度開發(fā)代碼,減少傳統(tǒng)編程工作。 這些工具有助于快速開發(fā)代碼,最大限度地減少手工編碼的工作量。這些平臺(tái)不僅有助于編
    的頭像 發(fā)表于 07-18 15:39 ?217次閱讀
    國內(nèi)低<b class='flag-5'>代碼</b>平臺(tái)推薦--萬界星空科技低<b class='flag-5'>代碼</b>平臺(tái)

    touchgfx生成了代碼,也能編譯成功,但下載之后無法顯示圖像是什么原因?

    我用touchgfx生成了代碼,也能編譯成功,但下載之后無法顯示圖像,可能是什么原因?
    發(fā)表于 07-03 08:19

    touchgfx生成代碼報(bào)錯(cuò)怎么解決?

    touchgfx生成代碼報(bào)錯(cuò),怎么解
    發(fā)表于 06-03 08:51

    stm32CubeMX怎么添加中斷以及相應(yīng)的代碼或者.c和.h文件?

    我想咨詢一下,用stm32CubeMX生成的工程里邊 怎么添加中斷以及相應(yīng)的代碼或者.c和.h文件。我跑的是freertos系統(tǒng),能不能在stm32CubeMX里邊直接添加啊。
    發(fā)表于 04-29 08:17

    使用touchGFX生成代碼后,在該工程上再做些許改動(dòng)STM32CUBEIDE都會(huì)頻繁報(bào)錯(cuò)的原因?

    使用touchGFX生成代碼后,只要是在該工程上再做些許改動(dòng),STM32CUBEIDE都會(huì)頻繁報(bào)錯(cuò)make: *** No rule to make target
    發(fā)表于 03-12 07:50

    【鴻蒙】NAPI 框架生成工具實(shí)現(xiàn)流程

    NAPI 框架生成工具 可以根據(jù)用戶指定路徑下的 ts(typescript)接口文件一鍵生成 NAPI 框架代碼、業(yè)務(wù)代碼
    的頭像 發(fā)表于 02-28 17:00 ?586次閱讀
    【鴻蒙】NAPI <b class='flag-5'>框架</b>生成工具實(shí)現(xiàn)流程

    【鴻蒙】OpenHarmony 4.0藍(lán)牙代碼結(jié)構(gòu)簡析

    OpenHarmony 4.0藍(lán)牙代碼結(jié)構(gòu)簡析前言 OpenHarmony 4.0上藍(lán)牙倉和目錄結(jié)構(gòu)進(jìn)行一次較大整改,本文基于4.0以上版本對(duì)藍(lán)牙代碼進(jìn)行分析,便于讀者快速了解和學(xué)習(xí)
    的頭像 發(fā)表于 02-26 16:08 ?1311次閱讀
    【鴻蒙】OpenHarmony 4.0藍(lán)牙<b class='flag-5'>代碼</b>結(jié)構(gòu)簡析

    devc怎么注釋掉一段代碼

    在DevC中,要注釋掉一段代碼,你可以使用注釋符號(hào)來標(biāo)記這段代碼。注釋符號(hào)的作用是告訴編譯器不要編譯這些代碼,而是將其視為注釋,這樣可以方便開發(fā)人員在代碼
    的頭像 發(fā)表于 11-22 10:23 ?2103次閱讀

    實(shí)戰(zhàn)經(jīng)驗(yàn) | TouchGFX 控件附加 ClickListener 功能的方法介紹

    Designer 中的 Mixin 功能,從基礎(chǔ)示例 Button Example 出發(fā),為文本框控件添加 ClickListener (Mixin 功能中的一項(xiàng)),并對(duì)源代碼進(jìn)行簡單剖析。期望能幫助客戶更深入地理解 STM32 To
    的頭像 發(fā)表于 11-17 17:40 ?1187次閱讀

    TouchGFX開發(fā)(3)----使用TouchGFX配置IIC接口OLED

    TouchGFX開發(fā)(3)----使用TouchGFX配置IIC接口OLED
    的頭像 發(fā)表于 11-09 15:31 ?1433次閱讀
    <b class='flag-5'>TouchGFX</b>開發(fā)(3)----使用<b class='flag-5'>TouchGFX</b>配置IIC接口OLED

    TouchGFX開發(fā)(2)----觸摸屏幕組件點(diǎn)亮LED

    了解如何使用 TouchGFX 配置屏幕,添加觸摸按鈕,并通過按鈕控制板載 LED 的狀態(tài)。
    的頭像 發(fā)表于 11-09 15:25 ?1034次閱讀
    <b class='flag-5'>TouchGFX</b>開發(fā)(2)----觸摸屏幕組件點(diǎn)亮LED

    STM32Cube CubeIDE添加代碼點(diǎn)亮LED

    前一篇已經(jīng)生成了CubeIDE的工程代碼,接下來就要用CubeIDE打開,添加點(diǎn)亮LED燈的代碼了。
    的頭像 發(fā)表于 11-06 14:40 ?1201次閱讀
    STM32Cube CubeIDE<b class='flag-5'>添加</b><b class='flag-5'>代碼</b>點(diǎn)亮LED

    編程雜談-代碼review

    先梳理下程序員日常的工作需要那些東西,首先就是參考各種手冊(cè),技術(shù)文檔,讀代碼了解框架,然后制定方案,進(jìn)行編碼實(shí)現(xiàn)。這其中一方面是對(duì)于技術(shù)手冊(cè)的掌握經(jīng)驗(yàn),另一方面就是代碼的架構(gòu)能力。
    的頭像 發(fā)表于 10-30 16:50 ?365次閱讀
    編程雜談-<b class='flag-5'>代碼</b>review

    Arduino音樂代碼怎樣添加?

    Arduino音樂代碼怎樣添加
    發(fā)表于 10-30 08:26

    基于 TouchGFX 生成的代碼添加觸摸功能的方法

    基于 TouchGFX 生成的代碼添加觸摸功能的方法
    的頭像 發(fā)表于 10-27 09:21 ?761次閱讀
    基于 <b class='flag-5'>TouchGFX</b> 生成的<b class='flag-5'>代碼</b>中<b class='flag-5'>添加</b>觸摸功能的方法