标题:VB怎样实现输入框动态顺序赋值
只看楼主
xhvb163
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-7-30
结帖率:0
已结贴  问题点数:20 回复次数:7 
VB怎样实现输入框动态顺序赋值
如图所示,所有输入框的初始值都为0。
当变量V1第一次等于1的时候,最右边1列输入框显示最新数值,其他列值都向各左移动1列。
当变量V1第二次等于1的时候,右边第一列输入框的值移到右边第二列,右边第一列显示最新数值;
当变量V1第三次等于1的时候,右边第二列输入框的值移到右边第三列,右边第一列输入框的值移到右边第二列,右边第一列显示最新数值;
。。。以此类推。。
一句话,变量V1每变1一次,就有最新数值显示到右边第一列上,其他列数值依次左移一列,最左边的一列数值超出列数时自动消失。

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

搜索更多相关主题的帖子: 输入框 变量 显示 最新 一列 
2018-01-18 11:39
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:5 
问题不全面,变量V变化规律?最新数值在那里?变量V每次包含都是1,有区别吗?等于变量V没有变化!!
这个实现应该不是太复杂。

请不要选我!!!
2018-01-18 11:48
dsxktop
Rank: 2
等 级:论坛游民
威 望:1
帖 子:33
专家分:31
注 册:2018-1-13
得分:5 
不太了解,不过有点像数组递归操作,能用数组吗?

大师兄威客 http://www.dsx.top/
2018-01-18 11:50
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:934
专家分:5244
注 册:2015-8-10
得分:5 
创建一个二维数组,比如说a(i,j)  i为行j为列,按照你这个例子i=2,j=3, a(i,j)的赋值你自己搞定
变量v和vsum,触发时(每次都是v=1,不清楚你程序是想如何实现触发),vsum=vsum+v, v=0
根据vsum来进行textbox的赋值即可。

程序代码:
'全局变量声明代码
dim a(2,3) as double
dim v as integer, vsum as integer

'数组赋值代码
for i= 0 to 2

 for j=0 to 3
  a(i,j)=1  ' 有规律用循环,要不就一行一行写出来
 next j
next i

'v=1时触发事件的代码
if v=1 then 

 vsum=vsum+v 

 v=0 '重置v,否则一直是v=1,导致死循环
end if 
……
'将数组填写如textbox的代码,可以使用控件数组和循环,如果不会一个textbox写一行代码逐个写出来
'下面代码示例使用控件数组, 第一列 0,1,2 ,第二列 3,4,5,第三列 6,7,8
select case vsum
case 0
' 全部为0
case 1
' 第1、2、3列为0
' 第4列分布为a(0,0)、a(1,0)、a(2,0)
case 2
' 第1、2列为0
' 第3列分布为a(0,0)、a(1,0)、a(2,0)
' 第4列分布为a(0,1)、a(1,1)、a(2,1)
case 3
' 第1列为0
' 第2列分布为a(0,0)、a(1,0)、a(2,0)
' 第3列分布为a(0,1)、a(1,1)、a(2,1)
' 第4列分布为a(0,3)、a(1,3)、a(2,3)
Case ……
end if 


[此贴子已经被作者于2018-1-18 12:54编辑过]

2018-01-18 12:52
xhvb163
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-7-30
得分:0 
可以用数组的,能实现就行。
是我没说清楚,过程可这样理解:当变量V1为1,各输入框值显示完成后,将V1的值置为0,等待下次触发
2018-01-18 13:18
xhvb163
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-7-30
得分:0 
虽然只有4列,但这四列textbox的值是动态变化的,不能写死。相当于最右边1列进,最左边1列出,V1为1时,就“动”一次,一直循环。
谢谢!
2018-01-18 13:24
xhvb163
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-7-30
得分:0 
最新的数值可简单化处理,随便用5列或多列数据,能达到我需要的动态显示效果就行,谢谢!
2018-01-18 13:30
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:5 
1行数据的,可以参考
https://bbs.bccn.net/viewthread.php?tid=306299
里的 ADD数据 函数。

==================
2维数组,就是扩展这个函数,一次使用多个数据而以
算法:
数组里的数据,依次向前移一个单元
如 a(1,2) 移到 a(1,1),a(1,3) 移到 a(1,2) ,
   a(2,2) 移到 a(2,1) ....
使用循环移动就可以了。
然后给最后一列的数据新值。
最后再去显示。

你这里面要求 变量V1每变1 时给新值。
那么这个 移数据读数据写到一个定时器里,定时器触发时间尽量短
这个定时器,先判断 V1 的值,
if V1=1 then
   V1=0        '先设置为0,防止重复处理
   for i=1 to 3  '行
   for j=2 to 4  '列
    a(i,j-1)=a(i,j)   '前移
    '显示内容,自己写
   next j
    a(i,j)=新值在哪里,自己写       '给新值
   next i
end if

---------------
浏览器写的代码,自己调试

授人于鱼,不如授人于渔
早已停用QQ了
2018-01-19 09:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484324-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.249222 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved