标题:Textbox+listbox组成的动态列表
只看楼主
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
结帖率:98.96%
已结贴  问题点数:10 回复次数:11 
Textbox+listbox组成的动态列表
表单1.rar (3.53 KB)

1、在TEXT上输入,能逐个筛选
2、点combo也能
3、List上,双击鼠标,回车,ESC,能选择
不知道怎么做到像COMBO那样,鼠标在COMBO上移动时,选择的蓝色条跟着动
欢迎大家指点,完善。
搜索更多相关主题的帖子: 动态 
2015-11-24 16:18
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 

目前区分大小写。。
2015-11-24 16:21
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
梅子论坛有这样的贴子,自己找吧。


坚守VFP最后的阵地
2015-11-24 16:25
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
我上次找过,现在找不到了,就自己搞1个,我以前好像在在哪里看过的
反正这个很多人都用的上的,就放上来,大家完善完善,也许后来的人用的上。
基本上功能能实现,只是不完善
2015-11-24 16:27
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用mywisdom88在2015-11-24 16:18:36的发言:


1、在TEXT上输入,能逐个筛选
2、点combo也能
3、List上,双击鼠标,回车,ESC,能选择
不知道怎么做到像COMBO那样,鼠标在COMBO上移动时,选择的蓝色条跟着动
欢迎大家指点,完善。

1、在TEXT上输入,能逐个筛选
    可在 InteractiveChange 事件中处理
2、点combo也能
    不知要干啥?
3、List上,双击鼠标,回车,ESC,能选择
    可在鼠标键盘事件中处理,ListBox的回车好象也触发双击鼠标事件

4、不知道怎么做到像COMBO那样,鼠标在COMBO上移动时,选择的蓝色条跟着动
     还未发现ListBox有关鼠标行列定位功能,要自己计算,有点难度,用Grid代替ListBox就容易实现。
2015-11-24 19:48
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
以下是引用吹水佬在2015-11-24 19:48:00的发言:

 
1、在TEXT上输入,能逐个筛选
    可在 InteractiveChange 事件中处理
2、点combo也能
    不知要干啥?
3、List上,双击鼠标,回车,ESC,能选择
    可在鼠标键盘事件中处理,ListBox的回车好象也触发双击鼠标事件
 

4、不知道怎么做到像COMBO那样,鼠标在COMBO上移动时,选择的蓝色条跟着动
     还未发现ListBox有关鼠标行列定位功能,要自己计算,有点难度,用Grid代替ListBox就容易实现。
目前已经实现了1、2、3点的功能了。
只是第4点,还没实现。
这个是COMBOM的,鼠标只要在红框范围内移动,蓝色条都会跟着移动?你们不知?不用拉滚动条。
2015-11-24 22:31
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
动态列表.rar (3.54 KB)
第1楼的好像名称有点问题,我重新放上去。
1、2、3点功能本来就实现了的,我只是说不完善,希望大家指点,修改,完善。
第4点,就是6楼,combo本身的功能,就是鼠标在红框范围内上下移动时,蓝色的条也跟着移动,这个功能不知道在怎么,还没实现。
2015-11-24 22:38
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
回复 7楼 mywisdom88
第4点,用像素换算(不精准,没考虑换屏),还是用Grid好。
示例:
程序代码:
of = CREATEOBJECT("form1")
of.show(1)

DEFINE CLASS form1 as Form
    AutoCenter = .T.
    ADD OBJECT list1 as ListBox WITH top=10,left=10,RowSourceType=1,RowSource="101,202,303,404,505,606,707,808,909"
    
    PROCEDURE list1.MouseMove(nButton, nShift, nXCoord, nYCoord)
        nRowHeight = FONTMETRIC(1, this.FontName, this.FontSize);
                   + FONTMETRIC(3, this.FontName, this.FontSize) + 2
                   
        nRow = INT((nYCoord - this.Top - 2) / nRowHeight) + 1
        this.ListIndex = nRow
    ENDPROC
ENDDEFINE


[此贴子已经被作者于2015-11-24 22:50编辑过]

2015-11-24 22:46
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
考虑换屏
程序代码:
of = CREATEOBJECT("form1")
of.show(1)

DEFINE CLASS form1 as Form
    AutoCenter = .T.
    ADD OBJECT list1 as ListBox WITH top=10,left=10,RowSourceType=1,;
        RowSource="101,202,303,404,505,606,707,808,909,202,303,404,505,606,707,808,909,202,303,404,505,606,707,808,909"
    
    PROCEDURE list1.MouseMove(nButton, nShift, nXCoord, nYCoord)
        nRowHeight = FONTMETRIC(1, this.FontName, this.FontSize);
                   + FONTMETRIC(3, this.FontName, this.FontSize) + 2
                   
        nRow = INT((nYCoord - this.Top - 2) / nRowHeight)
        this.ListIndex = nRow + this.TopIndex
    ENDPROC
ENDDEFINE
2015-11-24 22:57
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
吹版,牛。
2015-11-25 09:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-459557-1-1.html




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

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