项目实战(三)—真正了解VB吗?

前端之家收集整理的这篇文章主要介绍了项目实战(三)—真正了解VB吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


@H_502_6@

最近做项目的时候遇到这样一个问题,现在的粮仓只有粮种类型,简单的说一种是长方体,另一种就是圆柱体.但用户要求把原平台上所有的仓房类型都加到系统中(看上去很专业).想想怎样去合理的切割,既可以显示出来,又可以不影响性能. 观察了一下这些仓的类型发现可以把涉及到的“圆”、“筒”、“洞”都归结为浅原仓,其余都为房式仓。@H_502_6@


@H_502_6@

一、问题@H_502_6@


如何将datagridview中含有这些字的词识别,执行不同的操作。@H_502_6@


@H_502_6@

二、解决方案@H_502_6@


1、想到从datagridview中模糊查询@H_502_6@

2、使用正则表达式进行查询@H_502_6@

3、使用VB自带函数Instr进行查询@H_502_6@


@H_502_6@

前两种方法,都可以实现,只不过我们用的比较少,会在后期博客中做介绍。现在主要介绍VB自带的Instr函数。@H_502_6@


@H_502_6@

三、Instr函数@H_502_6@


VB:InStr(n,String1,String2)@H_502_6@


@H_502_6@

1、定义:返回要截取的字符串在源字符串中的位置。@H_502_6@


@H_502_6@

2、功能:是从字符串String1的第n个字符开始搜索字符串String2第一次出现的位置,省略n时,则从Sring1的开头开始搜索。当字符串String1中包含String2时,返回值是从String1的第一个字符算起出现字符串String2的字符位置。如果String1中不包含String2,返回值则为0.@H_502_6@@H_502_6@


@H_502_6@

3、实例:@H_502_6@


@H_502_6@

<span style="font-size:18px;">DimString1 As String = "abcde"                  '定义String1为源字符串
Dim Search2As String = "a"                       '定义String2为需要检索的字符串

Dim n As Integer                                 '定义位置

TestPos= InStr(1,"W")                     ' Returns 0,字符串中不存在w</span>


@H_502_6@

4、项目实例:@H_502_6@

@H_502_6@

     Dim strStorage AsString                                       ’定义仓房类型

        Dim strIncludeCircleAs String                             ’定义包含“圆”的仓房类型

        Dim strIncludeTube AsString                              ’定义包含“筒”的仓房类型

        Dim strIncludeHole AsString                               ’定义包含“洞”的仓房类型

 

  '如果仓房类型中含有“圆”、“洞”、“筒”的都视为浅圆仓,其余都为房式仓

            strStorage =FrmHouseTool.dgvStorageInfo.CurrentRow.Cells("仓房类型").Value.ToString

            strIncludeCircle ="圆"

            strIncludeTube ="筒"

            strIncludeHole ="洞"

 

            '根据不同的仓房类型,显示不同的设置

            If InStr(1,strStorage,strIncludeHole) > 0 Or InStr(1,strIncludeCircle) > 0 OrInStr(1,strIncludeTube) > 0Then                  

                gbRect.Enabled= False                                    '长方体仓为不可用

                Exit Sub

            Else

                 gbRect.Enabled = true                                     '长方体可用

                Exit Sub

            End If

 
问题很容易用Instr解决了,现在想想为什么一开始没有想到呢?虽然在找的过程中也接触到了很多新的东西,但 很值得思考一下,为什么没有想到以前的学到的知识。简单的VB就可以解决的,现在想想,真的了解VB吗?加油吧! @H_502_6@

猜你在找的VB相关文章