野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14562|回复: 2

[emWin] STemwin 滚动条 SCROLLBAR 控件引起死机

[复制链接]
发表于 2021-7-22 15:43:23 | 显示全部楼层 |阅读模式
创建了一个界面,里面的控件比较多一页放不下。想使用SCROLLBAR 控件,可以上下滑动。
参照官方的 ScrollbarMove 例程,把所有控件地址存入一个数组hItem[y]。当检测到SCROLLBAR 控件值改变时,在 for 循环里使用 WM_MoveWindow 移动所有控件的位置。
和其它控件一样采用间接创建 SCROLLBAR 控件方式(垂直)。
但是,滚动条触摸后,系统就死机。
请问这可能是哪里的问题 ?

回调函数如下

                case ID_SCROLLBAR_0: // Notifications sent by 'SCROLLBAR'
                        switch (NCode) {
                        case WM_NOTIFICATION_CLICKED:
                                break;
                        case WM_NOTIFICATION_RELEASED:
                                break;
                        case WM_NOTIFICATION_SCROLLBAR_ADDED:
                                break;
                        case WM_NOTIFICATION_VALUE_CHANGED:
                             hItem1 = WM_GetDialogItem(pMsg->hWin, ID_SCROLLBAR_0);      

                                 WM_GetScrollState(hItem1, &ScrollState);
                             if ( _y != ScrollState.v )
                                   {
                                      int y;
                                           for (y=1; y< ITEM_MAX; y++)
                                               {
                                                     WM_MoveWindow(hItem[y], 0, _y - ScrollState.v  );
                                                   }
                                 
                                       _y = ScrollState.v;
                                    }
                                break;
                        }
                        break;      

回复

使用道具 举报

发表于 2021-7-27 14:02:48 | 显示全部楼层
单看这一部分代码没问题,滑动条初始化的时候有没有绑定到窗口上?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-29 09:12:41 | 显示全部楼层
用 SCROLLBAR_CreateAttached() 函数和 SCROLLBAR_CreateIndirect() 函数分别试过了,都不行。
后来使能了窗口的内存设备,还是不行。再后来尝试了只移动最后一个控件,似乎所有的控件都会跟着移动,
但是有重影。我用的时 F103 怀疑内存不够。现在放弃了这种方式,改用翻页方式解决这个问题。
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-4-18 23:23 , Processed in 0.028388 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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