| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1264 人关注过本帖, 4 人收藏
标题:VFP9 combox 的BUG,CCB2000在VFP10中已修复。谁有简单的绕过这个BUG的方法 ...
取消只看楼主 加入收藏
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
结帖率:100%
收藏(1)
已结贴  问题点数:20 回复次数:22 
VFP9 combox 的BUG,CCB2000在VFP10中已修复。谁有简单的绕过这个BUG的方法?
CCB2000在VFP10中剖析修复:https://

复现BUG例子:
combo_bug.rar (2.53 KB)


BUG演示:
图片附件: 游客没有浏览图片的权限,请 登录注册


这个例子是简单的把dbf挂接到combox上

测试过程:点击小三角展开
滚动条拉到底,选择点击最后一个
滚动条拉到头,再选择点击第一个
反反复复,多试几次,有时候第一次第二次就会出现BUG

当点击list项目后,combox的值没有发生改变,BUG就呈现出来了,此时点击窗口,combox的值又更新了。
看看谁有简单有效绕过这个BUG的方法?
2025-04-03 17:35
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
4. APPLIES TO:

     VFP 9.0.0.3504 (SP1)
     VFP 9.0.0.4611 (SP2)
     VFP 9.0.0.5015 (SP2)
     VFP 9.0.0.5411 (SP2)
     VFP 9.0.0.5721 (SP2)
     VFP 9.0.0.5815 (SP2)
     VFP 9.0.0.6303 (SP2)
     VFP 9.0.0.6602 (SP2)
     VFP 9.0.0.7423 (SP2)

     The bug has been fixed in VFP Advanced.

刚刚找了9.0 - 2412版测试,没有这个BUG
2025-04-03 18:29
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用schtg在2025-4-4 06:50:19的发言:

我刚测试了11次,都没有问题的哈,我的操作系统win10 64位。

9.0 - 2412:正常,之后的升级版包括 7423,都有这个BUG。你的VFP是哪个版本的?
2025-04-04 10:00
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用schtg在2025-4-4 11:05:19的发言:

我安装的是专业版2412,然后直接拷贝的7423的文件覆盖了2412的哈

跟windows无关,只要不是2412,就有BUG。我用的就是7423,仔细看一下9.0的关于,你用的是不是7423
2025-04-04 11:28
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
VFP SP2更新内容.rar (10.18 KB)

设置 20、奇数、偶数都没用
2412 的 PictureVal 不支持 png,7423 修正之前版本很多BUG
2025-04-04 17:46
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用schtg在2025-4-4 16:47:13的发言:

就是7423哈

同样的 exe,运行有这个BUG,用 2412 版本的 vfp9r.dll、vfp9rchs.dll 替换掉,再运行就没有这个BUG
2025-04-04 17:49
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用csyx在2025-4-4 18:15:50的发言:
理解错误,schtg 不是复现不了这 bug 嘛,把 DisplayCount 设置成大点的数。项数越多越容易出现选不上的情况,不是设成 15 就没这 bug 了

list项目少,也会有这个BUG,包括下拉组合、下拉列表这 2 种模式。有绕过这个BUG的方法吗?
2025-04-04 18:52
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
展开 list 时,这个list是在一个带有句柄的窗口中,我在计时器中获取不到它的句柄,如果能获取到这个类“vfp994000002”的句柄,用消息激活它置顶,大概率能绕过这个BUG。
这个类的名称目前发现规律是“vfp + 9940 + 00002”:exe名 + 不同的exe中间4位不一样 + 4个0 + “2”
这个类的名称 = 所在窗口的类名称 + “2”

[此贴子已经被作者于2025-4-4 19:09编辑过]

2025-04-04 19:04
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用csyx在2025-4-4 19:08:52的发言:


项数少到不出现滚动条就没问题。
我的方案是,基类中 DispalyCount 设置为 15,凡项数大于 15 的都用两或三级的弹出菜单替代(DropDown 里 NoDefault,然后在 Combobox 下弹出这个菜单)

你这个方法也是不错的,我在有输入需求自动展开list的combox中用 combox + list,2个控件组合成一个类库使用,可以绕过去。
现在是想看看单独使用combox时有没有办法绕过去。

[此贴子已经被作者于2025-4-4 19:13编辑过]

2025-04-04 19:11
kangss
Rank: 8Rank: 8
等 级:贵宾
威 望:14
帖 子:318
专家分:732
注 册:2014-6-12
收藏
得分:0 
以下是引用csyx在2025-4-4 19:23:54的发言:

实例截图是这样


我不想用 list,因为 list 的位置受限于当前表单位置和尺寸,除非表单最大化,上面截图中菜单高度就超出表单下边界

漂亮!
2025-04-04 19:42
快速回复:VFP9 combox 的BUG,CCB2000在VFP10中已修复。谁有简单的绕过这个BUG的 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021032 second(s), 12 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved