硬汉嵌入式论坛

 找回密码
 立即注册
查看: 6389|回复: 4
收起左侧

[emWin] 如何实现清除前一次的text_setText()内容

[复制链接]

2

主题

32

回帖

2

积分

新手上路

积分
2
发表于 2014-5-25 11:47:23 | 显示全部楼层 |阅读模式
TEXT_SetText(tText_TResult,"");   
     GUI_Exec();        
TEXT_SetText(tText_TResult,"       ");    //这样也清除不了

API没有清除函数

API没有清除函数

这样写,清除不了、、
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107156
QQ
发表于 2014-5-25 21:39:57 | 显示全部楼层
发个稍完整点的程序,我试试。
回复

使用道具 举报

2

主题

32

回帖

2

积分

新手上路

积分
2
 楼主| 发表于 2014-5-31 12:01:40 | 显示全部楼层

回 eric2013 的帖子

eric2013:发个稍完整点的程序,我试试。 (2014-05-25 21:39) 
WM_HWIN   hWin_TestingPage;

static const GUI_WIDGET_CREATE_INFO _aDialogCreate_TestingPage[] =
{
  { WINDOW_CreateIndirect, "Window_Page_Testing", ID_WINDOW_TestingPage,  0, 27, 480, 217, 0, 0, 0 },
};

//static  u16 tPenSize = 0;//笔画大小
//static  u16 tX0 = 0;
//static  u16 tY0 = 0;  //    起点
//static  u16 tLength = 0;// 长度
//static  u16 tHeight = 0;// 高度
//static  u16 tGrid = 0;// 高度
//static  u16 tGrid = 0;// 高度

//定义        学号         一次      二次         三次          结果
TEXT_Handle tText_TID, tText_Tone, tText_Ttwo, tText_Tthree, tText_TResult;



static void SXQ_LDTY_Disp_Testing_Page(void)
{

GUI_SetColor(GUI_BLUE);
        
GUI_SetBkColor(GUI_WHITE);   
   
GUI_SetFont(&GUI_FontHZ_YouYuan_4848);            
//学号
tText_TID = TEXT_CreateEx( 174 , 8 ,280 ,48 , hWin_TestingPage,  WM_CF_SHOW, 0,0,"" );  
//结果
tText_TResult = TEXT_CreateEx( 174 , 159 ,240 ,48 ,hWin_TestingPage,  WM_CF_SHOW,0,0,"" );  
                        
GUI_SetFont(&GUI_FontHZ_YouYuan_4040);

GUI_SetBkColor(GUI_WHITE);
GUI_DispStringAt("一次",50, 65); //17~164  90.5 50
GUI_DispStringAt("二次",200, 65);//167~313 240  200
GUI_DispStringAt("三次",348, 65);//316~463 389  348
GUI_SetBkColor(GUI_BLACK);
GUI_ClearRect(165,60,166,155);//竖
GUI_ClearRect(314,60,315,155);
                                
//一次
tText_Tone = TEXT_CreateEx( 17 , 109 ,147 ,47 ,hWin_TestingPage, WM_CF_SHOW,0,0,"" );  
//二次
tText_Ttwo = TEXT_CreateEx( 167 , 109 ,147 ,47 ,hWin_TestingPage,WM_CF_SHOW,0,0,"" );  
//三次
tText_Tthree = TEXT_CreateEx( 316 , 109 ,147 ,47 ,hWin_TestingPage,WM_CF_SHOW,0,0,"" );                  


    TEXT_SetFont(tText_TID, &GUI_FontHZ_YouYuan_4848);
    TEXT_SetFont(tText_TResult, &GUI_FontHZ_YouYuan_4848);        
    TEXT_SetFont(tText_Tone, &GUI_FontHZ_YouYuan_4040);
    TEXT_SetFont(tText_Ttwo, &GUI_FontHZ_YouYuan_4040);   
    TEXT_SetFont(tText_Tthree, &GUI_FontHZ_YouYuan_4040);   
   
    TEXT_SetTextAlign(tText_TID, GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_TID, GUI_RED);
    TEXT_SetTextAlign(tText_TResult, GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_TResult, GUI_RED);   
    TEXT_SetTextAlign(tText_Tone, GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_Tone, GUI_RED);   
    TEXT_SetTextAlign(tText_Ttwo, GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_Ttwo, GUI_RED);   
    TEXT_SetTextAlign(tText_Tthree, GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_Tthree, GUI_RED);            
}


/*********************************************************************
*
*       _cbDialog
*/
static void _cbDialog_TestingPage(WM_MESSAGE * pMsg) {
  WM_HWIN hItem;
  switch (pMsg->MsgId) {
  case WM_INIT_DIALOG:
    hItem = pMsg->hWin;
      WINDOW_SetBkColor(hItem, GUI_WHITE);   
    break;
   
  case WM_NOTIFY_PARENT:
     
    break;
   
  case WM_PAINT:
      GUI_Clear();            
    TESTIN_PAGE_Init();   
    break;
   
  default:
    WM_DefaultProc(pMsg);
    break;   
   
  }
}
//TEXT类型数据清零
void TEXT_Clear_Data(void)
{
     TEXT_SetText(tText_Tone,   "");   
     TEXT_SetText(tText_Ttwo,   "");   
     TEXT_SetText(tText_Tthree, "");
     TEXT_SetText(tText_TID,    "");        
     TEXT_SetText(tText_TResult,"");   
     GUI_Exec();        
}


//创建操作lcd顶部显示
void  CreateWindow_TestingPage(void)
{   
      hWin_TestingPage = GUI_CreateDialogBox(_aDialogCreate_TestingPage, GUI_COUNTOF(_aDialogCreate_TestingPage), &_cbDialog_TestingPage, WM_HBKWIN, 0,0);
}

//释放GUI窗口。释放内存
void  Delete_TestingPage_Objects(void)
{
        WM_DeleteWindow(hWin_TestingPage);
//         GUI_MEMDEV_Delete(hWin_MM0);                                
}
//测试过程中执行代码
void TESTING_Execution(void)
{

             //创建测试界面
             CreateWindow_TestingPage();
             GUI_Exec();   
             Update_Display_Bottom();
             Update_Display_Top();
             GUI_Exec();   
             //测试
             TEXT_SetText(tText_Tone, "364");   
                         TEXT_SetText(tText_Ttwo, "64");   
             TEXT_SetText(tText_Tthree, "2.65");
             TEXT_SetText(tText_TID,  "3096");        
             TEXT_SetText(tText_TResult,  "3096");   
             GUI_Exec();        
             GUI_Delay(1500);
                         TEXT_Clear_Data();//不能清除。。。该用什么函数。
             TEXT_SetText(tText_Tone, "22");   
                         TEXT_SetText(tText_Ttwo, "22");   
             TEXT_SetText(tText_Tthree, "55");
             TEXT_SetText(tText_TID,  "75");
             TEXT_SetText(tText_TResult,  "88888");   
             GUI_Exec();        
             while(1);
}
回复

使用道具 举报

2

主题

32

回帖

2

积分

新手上路

积分
2
 楼主| 发表于 2014-5-31 12:03:42 | 显示全部楼层

回 eric2013 的帖子

eric2013:发个稍完整点的程序,我试试。 (2014-05-25 21:39) 
前几天毕业游了。。呵呵。。版主有用到吗?
主要就是
tText_Tone = TEXT_CreateEx( 17 , 109 ,147 ,47 ,hWin_TestingPage, WM_CF_SHOW,0,0,"" );
    TEXT_SetTextAlign(tText_Tone , GUI_TA_HCENTER| GUI_TA_VCENTER);
    TEXT_SetTextColor(tText_Tone , GUI_RED);
    TEXT_SetFont(tText_Tone , &GUI_FontHZ_YouYuan_4848);

TEXT_SetText(tText_TID,  "3096");   
这几个函数而已
回复

使用道具 举报

2

主题

32

回帖

2

积分

新手上路

积分
2
 楼主| 发表于 2014-6-6 10:48:52 | 显示全部楼层
没有人回答吗??
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-20 17:09 , Processed in 0.164172 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表