硬汉嵌入式论坛

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

[μCGUI] UC/GUI中控件PROGBAR怎么样竖着显示?

[复制链接]

27

主题

94

回帖

175

积分

初级会员

积分
175
发表于 2018-5-16 11:11:59 | 显示全部楼层 |阅读模式
如题,这个控件默认的是横着的,在网上也搜索了下相关的,好像说要修改GUI的源码里面的代码,但是具体怎么修改就没有呢。

来个的大神,指点指点的。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-16 11:38:45 | 显示全部楼层
有个参数可以设置,简单点,直接用GUIBuilder创建就行。
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-16 11:58:14 | 显示全部楼层
eric2013 发表于 2018-5-16 11:38
有个参数可以设置,简单点,直接用GUIBuilder创建就行。

硬汉哥,我是用的GUIBuilder创建的,他默认的就是横着显示的,在GUIBuilder属性栏中并没有看到可以改变竖着显示的参数。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-16 11:59:52 | 显示全部楼层
Mark 发表于 2018-5-16 11:58
硬汉哥,我是用的GUIBuilder创建的,他默认的就是横着显示的,在GUIBuilder属性栏中并没有看到可以改变竖 ...

鼠标右击此控件
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-16 14:06:06 | 显示全部楼层

右击的话只有“锁定” “剪切”  “复制”  “粘贴” “删除”   这5个。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-17 00:43:47 | 显示全部楼层
QQ截图20180517004038.png
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-17 09:05:43 | 显示全部楼层

硬汉哥,你这个用的是EMWIN Builder,而我用的是UCGUIBuilder,然后我也试了用EMWINBuilder这个软件生成的.c文件加进我的工程里是没有用的,然后我看了下他生成的.c代码只是倒数第三个参数置1就行,然后我就把UCGUIBuilder生成的代码这里也置1,但是还是没有反应。
  1. static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] = {
  2.          { FRAMEWIN_CreateIndirect, "Framewin", ID_FRAMEWIN_0, 0, 0, 406, 414, 0, 0x0, 0 },
  3.          { PROGBAR_CreateIndirect, "Progbar", ID_PROGBAR_0, 104, 72, 20, 80, 1, 0x0, 0 },
  4.          { PROGBAR_CreateIndirect, "Progbar", ID_PROGBAR_1, 81, 191, 80, 20, 0, 0x0, 0 },
  5. };
复制代码


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-17 09:48:49 | 显示全部楼层
Mark 发表于 2018-5-17 09:05
硬汉哥,你这个用的是EMWIN Builder,而我用的是UCGUIBuilder,然后我也试了用EMWINBuilder这个软件生成的 ...

看来UCGUI真的老了。
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-17 09:57:45 | 显示全部楼层
本帖最后由 Mark 于 2018-5-17 10:02 编辑
eric2013 发表于 2018-5-17 09:48
看来UCGUI真的老了。

硬汉哥,在请教个闪屏问题。
  1. void PaintDialog3(WM_MESSAGE * pMsg)
  2. {
  3.     WM_HWIN hWin = pMsg->hWin;
  4.         u8 Tbuf[20];
  5.         (void)hWin;

  6.         GUI_SetColor(GUI_BLUE);
  7.         GUI_SetFont(&GUI_Font6x8);
  8.         GUI_DispStringAt("o",158,97);
  9.         GUI_SetFont(&GUI_Font13H_ASCII);
  10.         GUI_DispStringAt("C",163,99);
  11.         GUI_SetFont(&GUI_Font6x8);
  12.         sprintf((char*)Tbuf,"%d",Get_Temprate()/100);
  13.         GUI_DispStringAt((const char *)Tbuf,144,102);
  14.         GUI_SetBkColor(GUI_WHITE);  //背景色覆盖
  15.         
  16. }
复制代码



这是我一个界面的一个功能之一,就是检测CPU的温度的并显示在LCD上,每次刷新数据的时候还是有那么4-6条黑线在LCD上一闪一闪的。我用你之前跟我的说用背景色来覆盖,不知道我上面这样使用是否正确,不过结果还是一样的闪屏。有没有其他的方法来解决这种闪屏的问题?
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-17 10:38:39 | 显示全部楼层
eric2013 发表于 2018-5-17 09:48
看来UCGUI真的老了。

然后我还试了WM的背景刷新,控件的背景刷新,都试过了,都没有起作用,不知道是不是我调用的方式或者地方不对呢?硬汉哥,有没有这方面问题的参考代码或者料子啥的?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-17 10:43:05 | 显示全部楼层
Mark 发表于 2018-5-17 09:57
硬汉哥,在请教个闪屏问题。

使能窗口使用存储设备了没,在GUI_Init后使能下。
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-17 11:13:50 | 显示全部楼层
eric2013 发表于 2018-5-17 10:43
使能窗口使用存储设备了没,在GUI_Init后使能下。

你可能不信硬汉哥我找了下UC/GUI中没有这个函数
/* Automatic use of multiple buffers */
int WM_MULTIBUF_Enable(int OnOff);
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-17 12:10:41 | 显示全部楼层
Mark 发表于 2018-5-17 11:13
你可能不信硬汉哥我找了下UC/GUI中没有这个函数
/* Automatic use of multiple buffers */
int ...

不是这个,这个是多缓冲,你要使用函数:WM_SetCreateFlags(WM_CF_MEMDEV);
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-17 14:05:53 | 显示全部楼层
eric2013 发表于 2018-5-17 12:10
不是这个,这个是多缓冲,你要使用函数:WM_SetCreateFlags(WM_CF_MEMDEV);

哦这个,用了,一样没用。
GUI_Init();
GUI_UC_SetEncodeUTF8();
WM_SetDesktopColor(Colorspicture[255]);
WM_SetCreateFlags(WM_CF_MEMDEV);
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-17 16:36:03 | 显示全部楼层
Mark 发表于 2018-5-17 14:05
哦这个,用了,一样没用。
GUI_Init();
GUI_UC_SetEncodeUTF8();

下一版说啥你也得升级下你的这个ucgui了,老版本的问题就是多。
回复

使用道具 举报

27

主题

94

回帖

175

积分

初级会员

积分
175
 楼主| 发表于 2018-5-18 08:42:46 | 显示全部楼层
eric2013 发表于 2018-5-17 16:36
下一版说啥你也得升级下你的这个ucgui了,老版本的问题就是多。

哎呀。硬汉哥,第一次接触GUI当初本来是用的EMWIN的,但是做到一半发现内存不够了(因为我现在的产品是没有任何外部存储芯片的,只有CPU内部的384KB的大小)所以才选择了UC/GUI的,但是没想到问题那么多,下个产品肯定不在用UC/GUI了。
   不过也是非常感谢硬汉哥这段时间的帮助,非常感谢!
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2018-5-18 09:11:30 | 显示全部楼层
Mark 发表于 2018-5-18 08:42
哎呀。硬汉哥,第一次接触GUI当初本来是用的EMWIN的,但是做到一半发现内存不够了(因为我现在的产品是没 ...

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-15 02:05 , Processed in 0.279178 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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