zoukankan      html  css  js  c++  java
  • 推断文本框、组合框为空(房重建知识汇总)

        重建房收益,反复用于推断文本框、无论是组合框为空。并清除文本框、组合框。为了这个目的,一系列的抽象方法。我开始写的比较乱,昨天再次处理,家交流学习。

     

        上图是组合查询的界面,由于上篇讲到了窗口继承。所以有益选择组合查询的父窗口,以此为基础。谈一下如何推断文本框、组合框是否为空,如何清空文本框、组合框,同一时候作为窗口继承的实践,以及组合查询的前篇。

        组合查询有三个条件,我们能够选择一个、两个或三个,这就须要我们去推断当中一部分文本框、组合框是否为空。怎么办?方法有两个,一是把须要推断的控件封装在控件数组里。还有一种是放在容器Panel里(题外话:我開始用的GroupBox,结果不能够,后来是zhao同学提示的我用Panel。感谢zhao同学),以下用封装数组的方法实现:

    <span style="font-family:SimSun;font-size:18px;">    '推断数组控件是否为空
        Public Function IsEmptyControlArray(ByVal ArrayControl() As Control)
            Dim control As New Control                       '定义控件类
            For Each control In ArrayControl                     '遍历数组中的控件
                If TypeOf (control) Is TextBox And control.Tag <> "" Then   '推断文本框是否为空   Tag <> ""防止漏写tag报错
                    If control.Text.Trim = "" Then                           '假设空,请示用户输入
                        MsgBox("请输入" & control.Tag.ToString, vbOKOnly, "提示")
                        control.Focus()                                   '控件获得焦点
                        Return False                       '返回False
                    End If
                ElseIf TypeOf (control) Is ComboBox And control.Tag <> "" Then  '推断组合框是否为空
                    If control.Text = "" Or control.Text.Trim = "<请选择>" Then       '假设空,提示用户选择数据项
                        MsgBox("请选择" & control.Tag.ToString, vbOKOnly, "提示")
                        control.Focus()                         '获取焦点
                        Return False                          
                    End If
                End If
            Next
            Return True                                   
        End Function
    </span>

        假设是放在Panel中的,參数直接定义为Panel.ControlCollection就可以,假设是推断窗口的所有控件,那么把參数定义为Windows.Forms.Control.ControlCollection。对于清空文本框、组合框也是相同的方法,这里不再赘述。

    然后把你须要推断的控件放在数组里面。设置好对应的Tag,调用此方法就可以。

        封装控件以及调用的代码:

    <span style="font-family:SimSun;font-size:18px;">            Dim ControlArray(2) As Control             '定义控件数组,获取组合1的控件
                ControlArray(0) = cboField1
                ControlArray(1) = cboOperator1
                ControlArray(2) = txtKey1
    
                If CommonMethod.IsEmptyControlArray(ControlArray) = False Then               '推断组合1的控件是否为空
                    Exit Sub
                End If</span>

        看一下效果:


        此处所描述的方法,欢迎批评。

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    c#自动更新+安装程序的制作
    VS2013项目受源代码管理向源代码管理注册此项目时出错
    WinDbg配置和使用基础
    InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
    PowerDesigner 如何生成数据库更新脚本
    用户故事(User Story)
    Troubleshooting Record and Playback issues in Coded UI Test
    Coded UI
    compare two oracle database schemas
    How to: Use Schema Compare to Compare Different Database Definitions
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4725331.html
Copyright © 2011-2022 走看看