注册 登录
编程论坛 VFP论坛

GRID同行有相同字符串时高亮显示

schtg 发布于 2023-08-23 08:18, 794 次点击
如图所示:
只有本站会员才能查看附件,请 登录

同一行中有相同的字符串时,就高亮显示,如第二行中有相同字符串"中_张三",就如图显示,可以是红色边框,也可以是红色背景,也可以是红色字体。
第四行中有相同字符串"汉_李四"如法炮制,在第四行第5列新填一个"汉_李四5",那么新添加的也要高亮显示,谢谢!
初始代码:
程序代码:
PUBLIC oform1

oform1=Newobject("Form1")
oform1.Show
RETURN


DEFINE CLASS Form1 AS form
    Top = 0
    Left = 0
    Height = 256
    Width = 561
    DoCreate = .T.
    Caption = "Form1"
    Name = "Form1"

    ADD OBJECT Grid1 AS grid WITH ;
        DeleteMark = .F.,;
        Height = 200,;
        Left = 36,;
        RecordSource = "tt",;
        Top = 24,;
        Width = 504,;
        Name = "Grid1"

    PROCEDURE Load
        CLOSE ALL
        CREATE dbf  tt(A c(12),B c(12),C c(12),D c(12),E C(12),F c(12))
        INSERT INTO tt values("","","","","","")
        INSERT INTO tt values("中_张三1","","","","中_张三5","")
        INSERT INTO tt values("","","","","","")
        INSERT INTO tt values("","","","","","")
        INSERT INTO tt values("","汉_李四2","","汉_李四4","","")
        INSERT INTO tt values("","","","","","")
        GO top
    ENDPROC

ENDDEFINE
9 回复
#2
miconet2023-08-23 10:45
如何实现
#3
csyx2023-08-23 10:51
你得先阐明啥叫相同,中_张三1 跟 中_张三5 显然不相同嘛
#4
schtg2023-08-23 16:43
回复 3楼 csyx
字符串中的汉字字符串相同,就视为相同,不考虑尾部的数字,谢谢!
#5
吹水佬2023-08-24 09:01
能做到有条件选择某行某列单元格的颜色就OK
如:
行%列==1,红色
行%列==2,蓝色
行%列==3,绿色


[此贴子已经被作者于2023-8-24 09:20编辑过]

#6
laowan0012023-08-24 09:13
如果一行中有两个 中_张三,还有两个 汉_李四,这该怎么显示?
#7
schtg2023-08-24 10:02
回复 6楼 laowan001
都用红色显示即可,意思就是提醒有部分字符串相同,稍加注意而已,谢谢!
#8
schtg2023-08-24 10:02
回复 5楼 吹水佬
我确实办不到,谢谢!
#9
laowan0012023-08-24 10:43
thisform.grid1.COLUMNS(n).DYNAMICBACKCOLOR="IIF(条件,RGB(139,248,248),RGB(255,255,255))"
这是给列指定不同颜色的语句
关键是这其中的条件怎么设定?估计要加辅助字段了
#10
sdta2023-08-24 11:51
要从源头解决问题,这样相对容易些。
1