VB怎样实现输入框动态顺序赋值

xhvb163 2018-01-18 10:53:26
如图所示,所有输入框的初始值都为0。
当变量V1第一次等于1的时候,最右边1列输入框显示最新数值,其他列值都向各左移动1列。
当变量V1第二次等于1的时候,右边第一列输入框的值移到右边第二列,右边第一列显示最新数值;
当变量V1第三次等于1的时候,右边第二列输入框的值移到右边第三列,右边第一列输入框的值移到右边第二列,右边第一列显示最新数值;
。。。以此类推。。
一句话,变量V1每变1一次,就有最新数值显示到右边第一列上,其他列数值依次左移一列,最左边的一列数值超出列数时自动消失。

请各位大神贴出实现的VB代码,在线等,谢谢了!


...全文
802 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
不要使用系统的int或者long,自己建立自己的class,自己建立自己的数据类型,在数据变化的方法中写入onChange事件,在窗口上调用该事件。
X-i-n 2018-01-20
  • 打赏
  • 举报
回复
建立一个函数SetV1,然后整个工程搜索一次 v1=xxxx,统统替换成 SetV1(xxxx)
Sub SetV1(int value)
 If value=1
'做你的操作
'v1=0
Else
v1=value
End If
End Sub
舉杯邀明月 2018-01-18
  • 打赏
  • 举报
回复
既然要“30秒左右”才会变为1一次,这个“变化速率”很低嘛。 那“变量V1”的值,又是“要多久”之后发生改变呢? 不过,你为何不在“引起V1发生变化”那儿进行“监视”呢? (这儿可以“实时监控、实时处理”的啊)
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
可以不用“变量V1”,用其他方法,实现动态显示就行!
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
方法不限,能实现我需要的功能就好,感谢!
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
这个“变量V1”’是个简单变量,相当于隔段时间会触发一次变为1,,时间不等,但不会很快,大概30s左右触发一次,所以靠它判断应该可以吧
舉杯邀明月 2018-01-18
  • 打赏
  • 举报
回复
你说的“变量V1”,如果是简单的变量,显然不行………… 如果整个工程,就只监视“1个变量;从其它值变为1时‘左移1列’ ”,  用一个标准模块、定义一个全局属性,就可以处理。  当然这个“监视值 1”也可以是其它值,可以变动、但“一段期间内,只能监视1个值”。 如果要监视“多个值”,就要用“类对象”、配合“事件消息”来处理了。用类对象,编程灵活性要高一些。
of123 2018-01-18
  • 打赏
  • 举报
回复
其实,有个简单的方法,也就是要将这个变量 V1 写入一个文本框。这样就不需要定时器监控。这个 TextBox 可以设置为不可见。
Private Sub Text4_Change()
    Dim i As Long

    If Text4.Text <> "1" Then Exit Sub

    For i = 0 To 2
        Text1(i)  = Text1(i + 1)
        Text2(i)  = Text2(i + 1)
        Text3(i)  = Text3(i + 1)
    Next i 

    Text1(3) = NewValue1
    Text2(3) = NewValue2
    Text3(3) = NewValue3

End Sub
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
我下载了,先运行下试试,再次感谢!
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
嗯,理解了。现在只用判断V1是否为1就可以,V1的值在程序中要置为0。 以上我说的不清楚的地方都可以再提出来 能提供下实现动态显示的代码吗,感谢!
舉杯邀明月 2018-01-18
  • 打赏
  • 举报
回复
这个是按“可监视变量值变化”的模式写的。 用的标准模块实现“监视”的,只监视1个值(当然可以按需要设置为任何值、可随时改变监视值)。 不过,这个示例工程,只是按“监视值=1”来写的。
舉杯邀明月 2018-01-18
  • 打赏
  • 举报
回复
给你写了个简单的“样本工程”,自己下载来看看。 运行一下程序,看看效果吧。 百度网盘分享链接:https://pan.baidu.com/s/1htJWn5a 提取密码:  fbax 有效期 7天
舉杯邀明月 2018-01-18
  • 打赏
  • 举报
回复
既然是“变量”,它的值可以变化啊。 但这“变化”不是凭空发生的吧! 自然是给它“赋值”时才会发生、才有可能变化。 那么,你在“哪儿给它赋值”,就可以在哪儿“检查”一下:    现在给它赋了什么新值?是不是“从其它值变为1了”啊…… 再按“检查结果”,进行相关处理,不就行了???
xhvb163 2018-01-18
  • 打赏
  • 举报
回复
过程可这样理解:变量V1为1,各输入框值显示完成后,将V1的值置为0,等待下次触发。 不过,你为何不在“引起V1发生变化”那儿进行“监视”呢? (这儿可以“实时监控、实时处理”的啊) --这个不太理解,能说明下吗

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧