推断文本框、组合框为空(房重建知识汇总)

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

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

组合查询有三个条件,我们能够选择一个、两个或三个,这就须要我们去推断当中一部分文本框、组合框是否为空。怎么办?方法有两个,一是把须要推断的控件封装在控件数组里。还有一种是放在容器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>

看一下效果:

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

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

时间: 2024-11-03 20:55:23

推断文本框、组合框为空(房重建知识汇总)的相关文章

vb.net窗口继承(房重建知识汇总)

在项目的开发,我们经常会遇到特殊的相界面似窗户,然后,我们将能够使用继承的窗口.透过窗户下面简单的例子来实现继承. 1.创建父窗口Form1 2.把须要重写的事件改为Overridable,将private保护类型改为protected或者pubic watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvQXVndXMzMzQ0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/C

Java知多少(88)列表和组合框

列表和组合框是又一类供用户选择的界面组件,用于在一组选择项目选择,组合框还可以输入新的选择. 列表 列表(JList)在界面中表现为列表框,是JList类或它的子类的对象.程序可以在列表框中加入多个文本选择项条目.列表事件的事件源有两种: 一是鼠标双击某个选项:双击选项是动作事件,与该事件相关的接口是ActionListener,注册监视器的方法是addActionListener(),接口方法是actionPerformed(ActionEvent e). 二是鼠标单击某个选项:单击选项是选项

MFC的组合框(ComboBox)控件切换下拉样式

由于课题的需求需要做MFC串口程序,看了百度下载的串口助手的界面风格,发现这个设计很好 波特率的组合框只给出了5个可选数值,然后第6个选项是Custom,即手动输入. 实际上DCB结构的BaudRate可选数值太多了,做成下拉框会很长很长,这种做法就是选用最常见的几个选项,不需要用户手动输入,也不需要在很长的列表中去选择. 从VS的属性框中可以看到,组合框控件有3种样式,也就是实现的功能是点击Custom选项时从Drop List切换到Dropdown. 从MSDN可以看到两者对应的宏分别为CB

判断文本框、组合框为空太麻烦?

做机房重构这么长时间了,由纯三层转到加模式加各种其他技术.写了各个层的代码,每次写到要判断文本框或组合框为空的时候总要重复一个一个的判断,虽简单但写的太多了就感觉不怎么爽.不将就是创造的原动力,整点儿技术含量的方法. 今天就解决了这个问题:判断是否为空就两种情况:1.全部为空2.部分为空 1.全部为空 Public Function IsAllEmpty(ByVal frm As Form) As Boolean Dim control As New Control For Each ct1 A

判断文本框、组合框是否空(机房重构知识点总结)

机房重构进行时,多次用到判断文本框.组合框是否为空,以及清空文本框.组合框,为此专门抽象出一系列的方法,开始写的比较乱,昨天又重新理了一遍,拿来与大家交流学习. 上图是组合查询的界面,因为上篇讲到了窗体继承,所以故意选择组合查询的父窗体,以此为基础,谈一下怎样判断文本框.组合框是否为空,怎样清空文本框.组合框,同时作为窗体继承的实践,以及组合查询的前篇. 组合查询有三个条件,我们可以选择一个.两个或三个,这就需要我们去判断其中一部分文本框.组合框是否为空,怎么办?方法有两个,一是把需要判断的控件

JS来推断文本框内容改变事件

   oninput,onpropertychange,onchange的使用方法 onchange触发事件必须满足两个条件: a)当前对象属性改变,而且是由键盘或鼠标事件激发的(脚本触发无效) b)当前对象失去焦点(onblur):    onpropertychange的话,仅仅要当前对象属性发生改变,都会触发事件,可是它是IE专属的: oninput是onpropertychange的非IE浏览器版本号,支持firefox和opera等浏览器,但有一点不同,它绑定于对象时,并不是该对象全部

JQuery UI之Autocomplete(4)多值输入、远程缓存与组合框

1.多值输入 首先加入相关的css和js文件,以及对应的HTML代码如下: <link href="../css/jquery-ui.css" rel="stylesheet" /> <script type="text/javascript" src="../js/jquery-1.9.1.min.js" ></script> <script type="text/java

Java知多少(89)列表和组合框

有两种类型的菜单:下拉式菜单和弹出式菜单.本章只讨论下拉式菜单编程方法.菜单与JComboBox和JCheckBox不同,它们在界面中是一直可见的.菜单与JComboBox的相同之处是每次只可选择一个项目. 在下拉式菜单或弹出式菜单中选择一个选项就产生一个ActionEvent事件.该事件被发送给那个选项的监视器,事件的意义由监视器解释. 菜单条.菜单和菜单项 下拉式菜单通过出现在菜单条上的名字可视化表示,菜单条(JMenuBar)通常出现在JFrame的顶部,一个菜单条显示多个下拉式菜单的名字

表单(上)EasyUI Form 表单、EasyUI Validatebox 验证框、EasyUI Combobox 组合框、EasyUI Combo 组合、EasyUI Combotree 组合树

EasyUI Form 表单 通过 $.fn.form.defaults 重写默认的 defaults. 表单(form)提供多种方法来执行带有表单字段的动作,比如 ajax 提交.加载.清除,等等.当提交表单时,调用 'validate' 方法来检查表单是否有效. 用法 创建一个简单的 HTML 表单.构建表单并给 id.action.method 赋值. <form id="ff" method="post"> <div> <lab