硬汉嵌入式论坛

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

[emWin] Graph控件中Scrollbar只能反方向滚动?

[复制链接]

2

主题

6

回帖

12

积分

新手上路

积分
12
发表于 2018-8-31 10:50:34 | 显示全部楼层 |阅读模式
屏幕尺寸320*240,Graph控件WM_INIT_DIALOG如下设置:
ahData = GRAPH_DATA_XY_Create(GUI_BLACK, 200, 0, 0);//最大200数据点
GRAPH_AttachData(hItem, ahData);
……

GRAPH_SetVSizeX(hItem, 1000);//设置显示尺寸1000
GRAPH_SetAutoScrollbar(hItem, GUI_COORD_X, 1);//scrollbar enable

……
GRAPH_SCALE_SetFactor(hScaleH, 0.2);
GRAPH_AttachScale(hItem, hScaleH);



应用程序中添加数据点:
    GUI_POINT pointdat[200];
    for(uint16_t i=0; i<200; i++)
    {
        pointdat.x = (uint16_t)(i*5);
        pointdat.y = (int16_t)(sin(i/5.0)*50);

        GRAPH_DATA_XY_AddPoint(ahData, &pointdat);
    }


//左右按键来滚动显示曲线
static uint32_t scrall_val;
void graph_scrall(uint32_t flag)
{
    if(flag == 0x00010000)//left
        scrall_val -= 100;
    else if(flag == 0x00020000)//right
        scrall_val += 100;

    GRAPH_SetScrollValue(hGraph, GUI_COORD_X, scrall_val);
}

注:此函数有些不当,当scrall_val为0后再减小100,就会变成一个很大的值,然后带入 GRAPH_SetScrollValue中会被截去超出范围的部分,然后变成一个1000附近的值。

实际调试时发现:GRAPH_SetScrollValue中的scrall_val逐步增大时,图像逐步右移(坐标往负的方向走),无法左移看到300以后的曲线,
初始界面如下:
微信图片3.jpg
只能往这个方向滚动,而我需要看的是后面的曲线
微信图片4.jpg

这是哪里出了问题,有没有用过的?

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115765
QQ
发表于 2018-8-31 11:04:34 | 显示全部楼层
滚动条滚动不方便,推荐每次显示更新GRAPH_DATA_XY_AddPoint值方便。
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2018-8-31 11:15:08 | 显示全部楼层
好的,那就这样了,也没有时间深究了,

感谢管理员百忙之中抽空对我这两个问题的解答!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-17 06:54 , Processed in 0.400082 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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