kylongmu 发表于 2019-2-28 09:39:33

CubeMx5.1生成的touchgfx工程编译一堆错误,难以搞定

先用keil5.27,基于769 discovery,直接以例子开始,编译后有缺头文件的,手工加上了;然后是一堆C++语法错误提示,感觉无能为力,应该是编译器配置问题。
然后换Truestudio,同样缺头文件,C++语法错误更多。
ST做个东西难道自己不用测试一下就发布吗?

admvip 发表于 2019-3-4 00:16:13

请参考我的帖子
https://www.stmcu.org.cn/module/forum/thread-619311-1-1.html

主要原因是少加了库文件和C++语法声明,导致编译时一大堆错误。

kylongmu 发表于 2019-3-4 13:51:53

admvip 发表于 2019-3-4 00:16
请参考我的帖子
https://www.stmcu.org.cn/module/forum/thread-619311-1-1.html



Build started: Project: Test1
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'd:\Keil_v5\ARM\ARMCC\Bin'
*** Warning: You are compiling one or more files of source type C++ and have selected 'use MicroLIB'. MicroLIB does not support C++!

Build target 'Test1'
compiling IntroductionView.cpp...
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(80): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> system;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(41): error:#262: not a class or struct name
class FadeAnimator : public T
          detected during instantiation of class "touchgfx::FadeAnimator<T> "at line 80 of "../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp"
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(81): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> model;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(82): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> presenter;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(83): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> view;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(84): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> ui;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(86): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> systemText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(87): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> modelText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(88): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> presenterText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(89): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> viewText;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(53): error:#292: "T" is not a nonstatic data member or base class of class "touchgfx::FadeAnimator<<error-type>>"
          T(),
          detected during instantiation of "touchgfx::FadeAnimator<T>::FadeAnimator() "at line 15 of "../touchgfx/gui/src/introduction_screen/introductionview.cpp"
../touchgfx/gui/src/introduction_screen/introductionview.cpp(17): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(22): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(24): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(29): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(31): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(36): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(38): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(43): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(45): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(50): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(52): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(57): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(59): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(64): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(66): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(71): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(73): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(78): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(80): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(85): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(87): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(92): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(94): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(99): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(101): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(106): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(108): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(113): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(115): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(120): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(122): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(127): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(129): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(134): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(136): error:#29: expected an expression
      {
../touchgfx/gui/src/introduction_screen/introductionview.cpp(141): warning:#12-D: parsing restarts here after previous syntax error
      };
../touchgfx/gui/src/introduction_screen/introductionview.cpp(146): error:#135: class "touchgfx::FadeAnimator<<error-type>>"has no member "setColor"
      ui.setColor(Color::getColorFrom24BitRGB(255, 0, 255));
../touchgfx/gui/src/introduction_screen/introductionview.cpp: 18 warnings, 30 errors
compiling IntroductionPresenter.cpp...
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(80): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> system;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(41): error:#262: not a class or struct name
class FadeAnimator : public T
          detected during instantiation of class "touchgfx::FadeAnimator<T> "at line 80 of "../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp"
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(81): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> model;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(82): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> presenter;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(83): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> view;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(84): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> ui;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(86): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> systemText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(87): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> modelText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(88): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> presenterText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(89): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> viewText;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(222): error:#276: name followed by "::" must be a class or namespace name
          T::handleTickEvent();
          detected during instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(252): error:#276: name followed by "::" must be a class or namespace name
                      T::setAlpha(fadeAnimationStartAlpha + deltaAlpha);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(253): error:#276: name followed by "::" must be a class or namespace name
                      T::invalidate();
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(262): error:#167: argument of type "touchgfx::FadeAnimator<<error-type>> *" is incompatible with parameter of type "const touchgfx::Drawable *"
                      Application::getInstance()->unregisterTimerWidget(this);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../touchgfx/gui/src/introduction_screen/introductionpresenter.cpp: 0 warnings, 14 errors
compiling FrontendApplicationBase.cpp...
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(80): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> system;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(41): error:#262: not a class or struct name
class FadeAnimator : public T
          detected during instantiation of class "touchgfx::FadeAnimator<T> "at line 80 of "../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp"
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(81): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> model;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(82): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> presenter;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(83): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> view;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(84): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> ui;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(86): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> systemText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(87): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> modelText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(88): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> presenterText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(89): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> viewText;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(222): error:#276: name followed by "::" must be a class or namespace name
          T::handleTickEvent();
          detected during instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(252): error:#276: name followed by "::" must be a class or namespace name
                      T::setAlpha(fadeAnimationStartAlpha + deltaAlpha);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(253): error:#276: name followed by "::" must be a class or namespace name
                      T::invalidate();
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(262): error:#167: argument of type "touchgfx::FadeAnimator<<error-type>> *" is incompatible with parameter of type "const touchgfx::Drawable *"
                      Application::getInstance()->unregisterTimerWidget(this);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../touchgfx/generated/gui_generated/src/common/frontendapplicationbase.cpp: 0 warnings, 14 errors
compiling BoardConfiguration.cpp...
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(80): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> system;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(41): error:#262: not a class or struct name
class FadeAnimator : public T
          detected during instantiation of class "touchgfx::FadeAnimator<T> "at line 80 of "../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp"
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(81): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> model;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(82): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> presenter;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(83): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> view;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(84): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<LabelBox>> ui;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(86): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> systemText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(87): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> modelText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(88): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> presenterText;
../TouchGFX/gui/include/gui/introduction_screen/IntroductionView.hpp(89): error:#868: space required between adjacent ">" delimiters of nested template argument lists (">>" is the right shift operator)
      FadeAnimator<MoveAnimator<TextArea>> viewText;
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(222): error:#276: name followed by "::" must be a class or namespace name
          T::handleTickEvent();
          detected during instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(252): error:#276: name followed by "::" must be a class or namespace name
                      T::setAlpha(fadeAnimationStartAlpha + deltaAlpha);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(253): error:#276: name followed by "::" must be a class or namespace name
                      T::invalidate();
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../middlewares/st/touchgfx/touchgfx/framework/include/touchgfx/mixins/FadeAnimator.hpp(262): error:#167: argument of type "touchgfx::FadeAnimator<<error-type>> *" is incompatible with parameter of type "const touchgfx::Drawable *"
                      Application::getInstance()->unregisterTimerWidget(this);
          detected during:
            instantiation of "void touchgfx::FadeAnimator<T>::nextFadeAnimationStep() "at line 224
            instantiation of "void touchgfx::FadeAnimator<T>::handleTickEvent() "
../TouchGFX/target/BoardConfiguration.cpp: 0 warnings, 14 errors
"Test1\Test1.axf" - 72 Error(s), 18 Warning(s).
Target not created.
Build Time Elapsed:00:00:03
多谢你的帮助,不过769discovery的例子与你的似乎相差比较大,改了一个漏掉的头文件,余下的与你的例子都不同,帮忙看看这堆错误,其中问题最大的代码文件:
#ifndef INTRODUCTION_VIEW_HPP
#define INTRODUCTION_VIEW_HPP

#include <gui_generated/introduction_screen/IntroductionViewBase.hpp>
#include <gui/introduction_screen/IntroductionPresenter.hpp>
#include <gui/containers/LabelBox.hpp>
#include <touchgfx/mixins/MoveAnimator.hpp>
#include <touchgfx/mixins/FadeAnimator.hpp>
#include <touchgfx/widgets/TextArea.hpp>

class IntroductionView : public IntroductionViewBase
{
public:
    IntroductionView();
    virtual ~IntroductionView() {}
    virtual void setupScreen();
    virtual void tearDownScreen();

    virtual void handleClickEvent(const ClickEvent& evt);
    virtual void handleGestureEvent(const GestureEvent& evt);
    virtual void handleDragEvent(const DragEvent& evt);
    virtual void handleKeyEvent(uint8_t key);
private:
    typedef enum
    {
      STATE_INTRODUCTION = 0,
      STATE_INTRODUCTION_WITH_MVP,
      STATE_MVP_UI_AND_SYSTEM,
      STATE_MVP_DESCRIPTION_1,
      STATE_MVP_DESCRIPTION_2,
      STATE_MVP_DESCRIPTION_3,
      STATE_MVP_DESCRIPTION_4,
      STATE_OUTPUT_TO_SYSTEM,
      STATE_OUTPUT_CODE_1,
      STATE_OUTPUT_CODE_2,
      STATE_OUTPUT_CODE_3,
      STATE_OUTPUT_CODE_4,
      STATE_INPUT_FROM_SYSTEM,
      STATE_INPUT_CODE_1,
      STATE_INPUT_CODE_2,
      STATE_INPUT_CODE_3,
      STATE_INPUT_CODE_4,
      STATE_DEMO,
      NUMBER_OF_STATES
    } StateId;

    typedef struct
    {
      int16_t x;
      int16_t y;
      uint8_t alpha;
    } ElementConfiguration;

    typedef struct
    {
      int16_t x;
      int16_t y;
      uint8_t alpha;
      TypedTextId textId;
    } TextConfiguration;

    typedef struct
    {
      ElementConfiguration ui;
      ElementConfiguration view;
      ElementConfiguration presenter;
      ElementConfiguration model;
      ElementConfiguration system;
      TextConfiguration viewText;
      TextConfiguration presenterText;
      TextConfiguration modelText;
      TextConfiguration systemText;
      TextConfiguration headlineText;
      uint8_t duration;
    } State;

    void go(bool forward);
    void gotoState(StateId id);

    FadeAnimator<MoveAnimator<LabelBox>> system;
    FadeAnimator<MoveAnimator<LabelBox>> model;
    FadeAnimator<MoveAnimator<LabelBox>> presenter;
    FadeAnimator<MoveAnimator<LabelBox>> view;
    FadeAnimator<MoveAnimator<LabelBox>> ui;

    FadeAnimator<MoveAnimator<TextArea>> systemText;
    FadeAnimator<MoveAnimator<TextArea>> modelText;
    FadeAnimator<MoveAnimator<TextArea>> presenterText;
    FadeAnimator<MoveAnimator<TextArea>> viewText;

    State states;
    StateId currentStateId;

    bool gesture;
};

#endif // INTRODUCTION_VIEW_HPP





renzg 发表于 2019-3-4 21:48:22

本帖最后由 renzg 于 2019-3-4 23:40 编辑

新手路过学习

ldptest 发表于 2019-3-8 16:08:11

新版的终于支持中文目录了。

butterflyspring 发表于 2019-3-15 17:41:05

目前这个版本看起来没有以前那么方便,通过朋友向ST反映一下,希望下一版能更好一些。 不过有工程师在
cubemx 生成代码前,先用designer 生成CODE,再用CUBEMX 生成项目。当然,用之前的版本也可以试试。
另外,我这边直接打开STM32F769I Dscovery 的例程编译是正常的哦:)
页: [1]
查看完整版本: CubeMx5.1生成的touchgfx工程编译一堆错误,难以搞定