完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
小弟最近在移植完了ucGUI,出现一个奇怪的问题,求大神解答啊!
void ColorTest() { GUI_SetBkColor(GUI_BLUE); GUI_Clear(); delay_ms(100); GUI_SetBkColor(GUI_RED); GUI_Clear(); delay_ms(100); GUI_SetBkColor(GUI_YELLOW); GUI_Clear(); delay_ms(100); GUI_SetBkColor(GUI_WHITE); GUI_Clear(); delay_ms(100); GUI_SetBkColor(GUI_GRAY); GUI_Clear(); delay_ms(100); GUI_SetBkColor(GUI_LIGHTRED); GUI_Clear(); delay_ms(100); } int main(void) { OSSystemInit(); ColorTest(); Calculator_Init();//主页面的载入 GUI_Exec(); //刷新界面显示 EDIT_SetText(hEdit,OpeNum); GUI_Exec(); //刷新界面显示 GUI_Init(); ColorTest(); showimage(gImage_qq); while(1) { } } 就是这段测试代码,为什么我执行第一个ColorTest();可以正常显示,到执行第二个ColorTest();的时候,就完全不受控制了了,肯本刷不了屏了,真的不知道为什么,刚刚入门ucGUI,求大神们解答 |
|
相关推荐
7个回答
|
|
帮顶....
|
|
|
|
原子大哥帮忙分析下啊,刚刚学,ucGUI资料又少,遇到了问题实在是不知道怎么处理
|
|
|
|
void Calculator_Init(void)
{ hFrame = FRAMEWIN_Create("QQ:1371995365", NULL, WM_CF_SHOW, 0, 0, 240,320); FRAMEWIN_SetActive(hFrame, 1); FRAMEWIN_SetMoveable(hFrame, 1); FRAMEWIN_SetFont(hFrame, &GUI_Font16B_ASCII); FRAMEWIN_SetTextColor(hFrame, GUI_RED); FRAMEWIN_SetBarColor(hFrame, 0, GUI_GREEN); FRAMEWIN_SetTextAlign(hFrame, GUI_TA_HCENTER); FRAMEWIN_AddMaxButton(hFrame, FRAMEWIN_BUTTON_RIGHT, 0); FRAMEWIN_AddMinButton(hFrame, FRAMEWIN_BUTTON_RIGHT, 1); hButton1 = BUTTON_CreateAsChild(10,80,40, 40,hFrame,101,WM_CF_SHOW); hButton2 = BUTTON_CreateAsChild(70,80,40, 40,hFrame,102,WM_CF_SHOW); hButton3 = BUTTON_CreateAsChild(130,80,40, 40,hFrame,103,WM_CF_SHOW); hButton4 = BUTTON_CreateAsChild(10,130,40, 40,hFrame,104,WM_CF_SHOW); hButton5 = BUTTON_CreateAsChild(70,130,40, 40,hFrame,105,WM_CF_SHOW); hButton6 = BUTTON_CreateAsChild(130,130,40, 40,hFrame,106,WM_CF_SHOW); hButton7 = BUTTON_CreateAsChild(10,180,40, 40,hFrame,107,WM_CF_SHOW); hButton8 = BUTTON_CreateAsChild(70,180,40, 40,hFrame,108,WM_CF_SHOW); hButton9 = BUTTON_CreateAsChild(130,180,40, 40,hFrame,109,WM_CF_SHOW); hButton0 = BUTTON_CreateAsChild(10,230,40, 40,hFrame,100,WM_CF_SHOW); hButton_jia = BUTTON_CreateAsChild(190,130,40, 40,hFrame,110,WM_CF_SHOW); hButton_jian = BUTTON_CreateAsChild(190,180,40, 40,hFrame,111,WM_CF_SHOW); hButton_chen = BUTTON_CreateAsChild(190,230,40, 40,hFrame,112,WM_CF_SHOW); hButton_chu = BUTTON_CreateAsChild(130,230,40, 40,hFrame,113,WM_CF_SHOW); hButton_equal = BUTTON_CreateAsChild(190,280,40, 40,hFrame,114,WM_CF_SHOW); hButton_backspace = BUTTON_CreateAsChild(190,80,40, 40,hFrame,112,WM_CF_SHOW); hButton_dort = BUTTON_CreateAsChild(70,230,40, 40,hFrame,116,WM_CF_SHOW); hButton_ac = BUTTON_CreateAsChild(10,280,40, 40,hFrame,117,WM_CF_SHOW); hButton_clear = BUTTON_CreateAsChild(70,280,40, 40,hFrame,118,WM_CF_SHOW); BUTTON_SetText(hButton0, "0"); BUTTON_SetText(hButton1, "1"); BUTTON_SetText(hButton2, "2"); BUTTON_SetText(hButton3, "3"); BUTTON_SetText(hButton4, "4"); BUTTON_SetText(hButton5, "5"); BUTTON_SetText(hButton6, "6"); BUTTON_SetText(hButton7, "7"); BUTTON_SetText(hButton8, "8"); BUTTON_SetText(hButton9, "9"); BUTTON_SetText(hButton_jia, "+"); BUTTON_SetText(hButton_jian, "-"); BUTTON_SetText(hButton_chen, "x"); BUTTON_SetText(hButton_chu, "/"); BUTTON_SetText(hButton_equal, "="); BUTTON_SetText(hButton_ac, "AC"); BUTTON_SetText(hButton_dort, "."); BUTTON_SetText(hButton_backspace, "Del"); BUTTON_SetText(hButton_clear, "Clr"); hEdit=EDIT_CreateAsChild(10, 30, 220, 40,hFrame, 119, WM_CF_SHOW, 20); EDIT_SetDefaultTextAlign(GUI_TA_RIGHT); EDIT_SetValue(hEdit,'0'); } Calculator_Init(); //主页面的载入,这是我的按钮显示程序,我怀疑跟这段代码有关,可是不知道到底有什么关系,到底哪里有影响 |
|
|
|
跟你所想的不一样,你那段代码完全没有问题~
PS:你怀疑自己的代码有问题的话,就可以把代码屏蔽掉,看看有什么差异~也可以把你怀疑的理由写出来~ 你的写程序的风格,和μc/GUI的风格是完全不符的;GUI是以界面为单位进行编写程序的,每一个界面代表一个独立的功能单元 推荐一下你用ucGUIBuilder这个软件编写一下界面,所有的操作都放在回调函数中进行处理~这才是GUI的编程风格 至于你的问题: 推测:第二个ColorTest();后面没有GUI的重绘操作GUI_Exec(); 解决方法: 在while循环中,调用GUI_Exec();并延时一段时间 你先试一下,能不能解决~ |
|
|
|
不行的,我试了的,加了重绘操作GUI_Exec(); 和延时都没用,我把这个Calculator_Init();屏蔽掉了,两个就都可以刷屏了,所以说跟这段代码有关,就是不知道为什么。至于说风格问题嘛,还是才刚刚学,先熟悉一下ucGui整体的基本操作了,慢慢来
|
|
|
|
那你逐行屏蔽,看看那一段出了问题~
|
|
|
|
GUI_Init()应在调用任何GUI库函数之前先执行,在执行该函数时会申请内存的
|
|
|
|
只有小组成员才能发言,加入小组>>
800 浏览 0 评论
1156 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2714 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1092浏览 3评论
197浏览 2评论
463浏览 2评论
376浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
458浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 10:32 , Processed in 1.317889 second(s), Total 93, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号