zoukankan      html  css  js  c++  java
  • VB6.0中,DTPicker日期、时间控件不允许为空时,采用文本框与日期、时间控件相互替换赋值(解决方案)

    VB6.0中,日期、时间控件不允许为空时,采用文本框与日期、时间控件相互替换赋值,或许是一个不错的选择。

    实现效果如下图:

    文本框txtStopTime1
    时间框DTStopTime1(DTPicker控件) 右键-属性-选择格式3 - dtpCustom  HH:mm:ss
    若没有DTPicker控件,在部件中添加 工具-部件-控件-“Microsoft Windows Common Controls-2.6.0”-应用-确定

    代码如下:

    Private Sub Form_Load()
          txtStopTime1.ZOrder
          DTStopTime1.Top = txtStopTime1.Top
          DTStopTime1.Left = txtStopTime1.Left
    end Sub
    '时间控件
    '键盘输入值
    Private Sub DTStopTime1_KeyPress(KeyAscii As Integer)
          If KeyAscii = 8 Then
                txtStopTime1.text = ""
                txtStopTime1.ZOrder
          End If
    End Sub
    '失去焦点
    Private Sub DTStopTime1_LostFocus()
          DTStopTime1.Value = format("00:00:00", "HH:mm:ss")
          txtStopTime1.ZOrder '决定谁在上面
    End Sub
    '值改变
    Private Sub DTStopTime1_Change()
          txtStopTime1.text = format(DTStopTime1.Value, "HH:mm:ss")
    End Sub
    
    '文本框
    '得到焦点
    Private Sub txtStopTime1_GotFocus()
          If Trim(txtStopTime1.text) = "" Then
                DTStopTime1.Value = format("00:00:00", "HH:mm:ss")
          Else
                DTStopTime1.Value = format(Trim(txtStopTime1.text), "HH:mm:ss")
          End If
          DTStopTime1.ZOrder
          DTStopTime1.SetFocus
    End Sub

    虽然图中的效果是实现了,在实际开发过程中,我们可能会经常使用到,我想这里完全可以做成自定义控件,需要的时候直接拖就好了。

    此思路和实现效果是在Q群:VB6.0编程 263653236上的群友一起讨论优化得出的,如若有更好的想法可以留言告知我。

  • 相关阅读:
    1.4(java学习笔记) 面向对象内存分析
    1.3(java学习笔记)构造方法及重载
    1.2(java学习笔记)类与对象
    1.1(java学习笔记) 面向过程与面向对象
    STM32F0库函数初始化系列:GPIO配置
    STM32F4库函数初始化系列:PWM输出
    STM32F4库函数初始化系列:DMA串口接收
    STM32F4库函数初始化系列:三重ADC——DMA
    STM32F1库函数初始化系列:DMA—ADC采集
    STM32F4库函数初始化系列:串口DMA接收
  • 原文地址:https://www.cnblogs.com/gilbert/p/5316412.html
Copyright © 2011-2022 走看看