机房收费系统-组合查询续

前言

上一篇文章简单的介绍了组合查询!
今天在完成其他的组合查询窗体时,有了一点小发现!现在来总结一下!

一、代码

代码上有了一点的小改动!
在进行组合条件判断的时候,我们往往通过一堆的if语句进行嵌套然后进行判断,今天用了另外一种方法,感觉比较简单,也很容易理解!

'用ok1、ok2和ok3来反映查询条件框的填写情况
If Trim(ziduancombo1(0).Text) <> "" And Trim(caozuofuCombo1(0).Text) <> "" And Trim(txtchaxun1.Text) <> "" Then
ok1 = True
Else
ok1 = False
End If
If Trim(ziduancombo1(1).Text) <> "" And Trim(caozuofuCombo1(1).Text) <> "" And Trim(txtchaxun2.Text) <> "" Then
ok2 = True
Else
ok2 = False
End If
If Trim(ziduancombo1(2).Text) <> "" And Trim(caozuofuCombo1(2).Text) <> "" And Trim(txtchaxun3.Text) <> ""  Then
ok3 = True
Else
ok3 = False
End If

这样在进行判断的时候就方便了很多!

If ok1 = False Then
        MsgBox "请填写完整查询条件!", vbOKOnly + vbExclamation, "警告"
Else
        txtSQL = "select * from student_info where " & field(Trim(ziduancombo1(0).Text)) & Trim(caozuofuCombo1(0).Text) & " '" & Trim(txtchaxun1.Text) & "'"
        Set mrc = executeSQL(txtSQL, msgtext)

其他部分的代码按照同样的方法结合上一篇博客的代码一次类推就OK了!

二、发现

今天完成的窗体是“操作员工作记录”,这个窗体与之前不同的是,字段中有了日期。 日期在文本框中输入很麻烦,所以可以加入一个日期控件来快速选择日期。

三、问题

加入日期控件很容易,但是窗体中已经有了文本框来收集信息了,那么日期控件该放在哪里?
1、日期控件单独独立出来,只有字段中选择日期相关的选项后在通过日期控件来记录信息。
这样做的话,应该是可以实现的,但是这样会给用户的带来不好的体验,也会让窗体布局变得繁琐,代码逻辑上困难在加大!
2、日期控件和文本框交替出现。所谓的交替出现就是当你选择了与日期相关的字段时,会自动隐藏文本框,显示出日期控件。
这样做的做的话,应该也可以实现,但是代码实现上该怎么处理?

四、实现

1、添加日期控件 dtpicker 控件。

(1)在查询内容文本框上画出控件。
(2)设置日期控件的属性
CheckBox=true 因为这个控件不允许空值。
visible=false 日期控件默认不可见
改名 :在这里我为了简便改名为 DTP1

2、代码实现

(1)在字段选择框的单击事件中添加代码,

Private Sub ziduancombo1_Click()
If ziduancombo1.Text = "登录日期" Or ziduancombo1.Text = "登出日期" Then '当选择登录日期或者登出日期的时候
    txtchaxun1.Text = ""                               '清空文本框中的内容
    txtchaxun1.Visible = False                         '将文本框设置为不可见
    dtp1.Visible = True                                '显示日期控件
    dtp1.Value = "2017-1-1"                            '给日期控件一个默认值
Else
   txtchaxun1.Visible = True                           '选择其他非日期选项的时候恢复设置
   dtp1.Visible = False
   txtchaxun1.Text = ""
End If
End Sub

(2)在日期控件的change事件中添加代码,
将日期控件获得的值赋值给文本框

Private Sub dtp1_Change()
txtchaxun1.Text = Format(dtp1.Value)
End Sub

这样就实现了。

结束语

感谢你的阅读,如果你有好的方法,欢迎分享!

评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LLLDa_&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值